У меня есть небольшое приложение Rails 4, у которого есть Devise и Simple Form.Rails 4: не нужно заполнять таблицу пользователей правильной информацией
Мой контроллер это:
class UserController < ApplicationController
def create
User.create(user_params)
end
private
def user_params
params.require(:user).permit(:first_name, :last_name, :profile_name, :email, :password, :password_confirmation])
end
end
Моя форма для знака вверх выглядит следующим образом:
<h2>Sign up</h2>
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div class="field">
<%= f.label :first_name %><br />
<%= f.text_field :first_name, autofocus: true %>
</div>
<div class="field">
<%= f.label :last_name %><br />
<%= f.text_field :last_name, autofocus: true %>
</div>
<div class="field">
<%= f.label :profile_name %><br />
<%= f.text_field :profile_name, autofocus: true %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.email_field :email, autofocus: true %>
</div>
<div class="field">
<%= f.label :password %>
<% if @validatable %>
<em>(<%= @minimum_password_length %> characters minimum)</em>
<% end %><br />
<%= f.password_field :password, autocomplete: "off" %>
</div>
<div class="field">
<%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation, autocomplete: "off" %>
</div>
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>
Однако, когда я смотрю на данные в таблице, он показывает только электронную почту и поля пароля. Имя и фамилия, а также имя профиля не сохраняются в записи.
Есть ли что-то я пропустил здесь, что это предотвращение всех полей от сохранения на создание нового пользователя? Попытка выяснить, что я пропустил здесь!
Thanks Pawel! Это решило ошибку для меня, и я полностью пропустил эту часть документации Devise относительно сильных параметров. – iamryandrake