0
私はレールが初めてです。イムは宝石Deviseと一緒に働いています。私は電子メールとパスワードを正しく設定しました。私は今ユーザ名を追加したいと思う。それでは、私がやったことだった。ROR:ユーザテーブルに列を追加する:許容されないパラメータ
rails g migration AddUserNameToUsers Username:string
invoke active_record
create db/migrate/20170203113948_add_user_name_to_users.rb
その後:
rails db:migrate
== 20170203113948 AddUserNameToUsers: migrating
-- add_column(:users, :Username, :string)
-> 0.0017s
== 20170203113948 AddUserNameToUsers: migrated (0.0024s)
その後、私はそれがusersテーブルに追加された確認:
sqlite> select * from users;
13|Username|varchar|0||0
その後、私は含まれるように工夫登録ビューを設定しましたユーザー名:
<div class="form-group">
<%= f.label :email %><br />
<%= f.email_field :email, autofocus: true, class: "form-control" %>
</div>
<div class="form-group">
<%= f.label :Username %><br />
<%= f.text_field :Username, autofocus: true, class: "form-control" %>
</div>
<div class="form-group">
<%= f.label :password %> <% if @validatable %><i>(<%= @minimum_password_length %> characters minimum)</i><% end %><br />
<%= f.password_field :password, autocomplete: "off", class: "form-control" %>
</div>
<div class="form-group">
<%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation, autocomplete: "off", class: "form-control" %>
</div>
<div class="form-group">
<%= f.submit "Sign up", class: "btn btn-primary" %>
</div>
<% end %>
ページが来ましたフォームを送信してもユーザー名は追加されませんでした。そして、ログが表示さ:
Started POST "/users" for ::1 at 2017-02-03 12:43:40 +0000
Processing by Devise::RegistrationsController#create as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"MfdDSafryl0mnHM3BzEtxkOoImZXUm7rfcq2sYrNaltD2S8i3SvFCRdMqam9ukEZXcY23zF/NpY/LPyj6tJm2A==", "user"=>{"email"=>"[email protected]", "Username"=>"james", "password"=>"[FILTERED]", "password_confirmation"=>"[FILTERED]"}, "commit"=>"Sign up"}
Unpermitted parameter: Username
あなたは、続くユーザー名attibuteを許可する必要がありhttp://jacopretorius.net/2014/03/adding-custom-fields-to-your-devise-user-model- in-rails-4.html、これはあなたを助けるかもしれません:) –