У меня есть проект Rails, который без проблем работал в течение прошлого года. Я сегодня клонировал его и запустил экземпляр локально (внутри ВМ), и все метки теперь отображаются так:
<label object="#<Organization:0x000055ae1b1ea888>">organization</label>
Вместо тега <label />
. Ничего существенного не изменилось, кроме нового контроллера и представлений.
Код, генерирующий его:
<div class="uk-margin">
<%= f.label :name, class: "uk-form-label" %>
<div class="uk-form-controls">
<%= f.text_field :name, maxlength: 100, required: true, class: 'uk-input', placeholder: 'ACME Incorporated Inc' %>
</div>
</div>
Я думал, что это может быть что-то сломано в локальном экземпляре, поэтому я перешел на производство, и теперь там происходит то же самое.
Кто-нибудь знает, как go исправить это?
РЕДАКТИРОВАТЬ:
Вот полная форма:
<%= form_for @organization, url: url do |f| %>
<div class="uk-margin">
<%= f.label :name %>
<div class="uk-form-controls">
<%= f.text_field :name, maxlength: 100, required: true, class: 'uk-input', placeholder: 'ACME Incorporated Inc' %>
</div>
</div>
<div class="uk-margin">
<%= f.label :tax_number %>
<div class="uk-form-controls">
<%= f.text_field :tax_number, maxlength: 100, required: false, class: 'uk-input', placeholder: '0000000000' %>
</div>
</div>
<%= f.submit 'Save' %>
<% end %>
ОБНОВЛЕНИЕ :
Это происходит во всех формах.
Вывод f.method(:label).source_location
:
/home/vagrant/lib/ruby/gems/2.5.0/gems/actionview-5.2.2/lib/action_view/helpers/form_helper.rb", 2025
ОБНОВЛЕНИЕ 2 :
Переключение на form_with приводит к печати этикеток следующим образом вместо:
<label skip_default_ids="false" allow_method_names_outside_object="true" object="#<Merchant:0x00007ff24c079810>">Category</label>