>>> 0 < 0 == 0
False
Это скованное сравнение. Он возвращает true, если каждое попарное сравнение по очереди истинно. Это эквивалентно (0 < 0) and (0 == 0)
>>> (0) < (0 == 0)
True
. Это эквивалентно 0 < True
, который оценивается как True.
>>> (0 < 0) == 0
True
Это эквивалентно False == 0
, который оценивает True.
>>> 0 < (0 == 0)
True
Эквивалентен 0 < True
, который, как указано выше, имеет значение True.
Сначала вы можете проверить, каково ваше настоящее имя столбца. Я заметил, что вы определили «имя» в вашем контроллере и просматриваете, но «имена» в вашей модели.
Кстати, когда вы определяете LogFileUpload.new
в вашем контроллере, вы можете использовать его непосредственно в своем представлении, и не вызывать новый метод дважды:
<div class="container">
<% if @log_file_upload.errors.present? %>
<div>
<ul>
<% @log_file_upload.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div>
<%= form_for @log_file_upload, html: { multipart: true } do |f| %>
<%= f.label :name %>
<%= f.text_field :name %>
<br><br>
<%= f.label :attachment %>
<%= f.file_field :attachment %>
<br>
<%= f.submit "Save" %>
<% end %>
</div>