При создании нового приложения я использовал пример marklocklear (https://github.com/marklocklear/devise_multi_tentant) для помощи в создании среды с несколькими арендаторами. Это работает хорошо.Регистрационная форма: не удалось скрыть поле
Следующее, что я хотел сделать, я думал, было бы просто, но превратилось в довольно хихиканье для меня.
Все, что я хотел сделать, это не то, что первоначальный администратор должен ввести название организации (что необязательно в моем приложении), я хотел скрыть это поле.
регистрация Форма (который работает):
<h2>Sign up</h2>
<% resource.organization ||= Organization.new %>
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div><%= f.label :email %><br />
<%= f.email_field :email %></div>
<%= f.fields_for :organization do |org| %>
<div><%= 'Organization or Company Name' %><br />
<%= org.text_field :name %></div>
<% end %>
<div><%= f.label :password %><br />
<%= f.password_field :password %></div>
<div><%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation %></div>
<div><%= f.submit "Sign up" %></div>
<% end %>
<%= render :partial => "devise/shared/links" %>
Итак, я сделал это, чтобы попытаться скрыть поле:
<%= f.fields_for :organization do |org| %>
<%= f.hidden_field :name %>
<% end %>
Но я получаю сообщение об ошибке.
Непонятная вещь для меня заключается в том, что если я покину поле, но не вводите значение, все будет работать должным образом - это неожиданно. Поскольку (как часть моего устранения неполадок) я полностью удалил поле и получил сообщение об ошибке, в котором форма обработки не могла быть обработана, поскольку часть организации была пуста.
Любая помощь будет оценена по достоинству.
использование 'org.hidden_field' не' f.hidden_field' – Max
Благодарим за помощь. Он отлично работал. – user1648020