私はRyan Bates' Multistep Forms castに従っていますが、パラメータには「user_」という接頭辞が付きます。パスワードはuser_passwordなどになります。ユーザー作成時には、teamname属性は検証されません。私はこれがuser_接頭辞によるものだと思うし、再度デフォルトの接頭辞または "user_params"の使用によるdeep_mergeによるもので、 "{:knockout_prefix => 'user_'}"を追加しようとしましたが、働いた。パラメータの接頭辞「user_」がフォームの検証を妨げる
users/new.html.erbは、 "<%= form_for @user do | f |%>"で始まり、 "<%= render"#{@user.current_step}_step "、f = > f%>」と表示されます。手順には、「<%= f.text_field:email%>」のようなフィールドが含まれます。「user_email」などのフィールドは含まれません。
users_controller.rb作成機能が含まれています
def create
session[:user_params].deep_merge!(params[:user]) if params[:user]
@user = User.new(session[:user_params])
@user.current_step = session[:user_step]
[email protected](rest of the code omitted)
end
モデル/ user.rbは含まれています
attr_accessible :email, :password, :password_confirmation
..several validation codes according to steps..
とWebページのソースは次のとおりです。
<input id="user_password" name="user[password]" size="30" type="password" />
は、任意のはありますなぜこのプレフィックスが発生しているのだろうか?