我收到以下错误
param not found: customer
这是我的auth_controller
def create
@customer = Customer.new(customer_params)
if @customer.save
flash[:success] = 'Success';
else
flash[:error] = 'Error'
end
end
private
def customer_params
params.require(:customer).permit(:username,:email,:password)
end
这是我的表格
<%= form_for :customer, url: {action: :create} do |f| %>
<%= f.text_field :username,placeholder: 'Username' %>
<%= f.password_field :password,placeholder: 'Password' %>
<%= f.email_field :email,placeholder: 'Email' %>
<input type="submit" value="Register" />
如何解决此错误
答案 0 :(得分:0)
您引用了:email
参数,但未在表单中定义。您的表单已:username
两次。您可能希望:email
为email_field
类型的字段。
答案 1 :(得分:0)
为什么不在表单中使用Customer类的对象,要么在呈现表单之前初始化@customer对象,要么使用
行动
def action_name
@customer = Customer.new
end
然后,在表单中使用
<%= form_for @customer, url: {action: :create} do |f| %>
或者,在表单中初始化新对象:
<%= form_for Customer.new, url: {action: :create} do |f| %>