Rails печатает литеральный объект метки вместо метки метки в помощнике формы - PullRequest
2 голосов
/ 15 февраля 2020

У меня есть проект Rails, который без проблем работал в течение прошлого года. Я сегодня клонировал его и запустил экземпляр локально (внутри ВМ), и все метки теперь отображаются так:

<label object="#<Organization:0x000055ae1b1ea888>">organization</label>

Вместо тега <label />. Ничего существенного не изменилось, кроме нового контроллера и представлений.

enter image description here

Код, генерирующий его:

<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>

1 Ответ

0 голосов
/ 23 февраля 2020

в соответствии с текущей документацией actionview, результат, который вы получаете, является ожидаемым (проверьте эту ссылку ). Есть вероятность, что это поведение изменилось с одной версии на другую. Проверьте, обновляли ли вы какой-либо драгоценный камень во время последнего развертывания, который может повлиять на такое изменение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...