我的联系表格FOR中有问题, 我有一个联系表,我想在我的产品视图中显示我的联系表。 如果我确定我的要求参数有问题
我的contact_params在我的ContactController中工作:
def contact_params
params.require(:contact).permit(:name, :email, :body)
end
我在ApplicationController中添加了
def set_contact
@contact = Contact.new params[:contact] || {}
end
以及我的ProductsControler中的
show
@contact = :set_contact
end
我的路线是:
get 'contact', to: 'contacts#new', as: 'new_contact'
post 'contact', to: 'contacts#create', as: 'create_contact'
我的渲染与之相同:
<%= render :partial => "contacts/contact" %>
和我在_contact.html.erb中的视图:
<%= form_for @contact, url: create_contact_url do |f| %>
<%= f.text_field :name %>
<%= f.email_field :email %>
<%= f.text_area :body %>
<%= f.submit 'Send' %>
铁路说我:
ActionController::ParameterMissing (param is missing or the value is empty: contact):
如果我删除了不起作用的require(:contact),请说我:
Unpermitted parameter: :contact
谢谢
答案 0 :(得分:0)
尝试将参数与产品参数合并 params [:product] .merge!(:contact)
例如 def company_params params [:company] .merge!(users_attributes:{'0':user_params.to_h}) params.require(:company).permit( :name,:contact_person_name,:email, :contact_person_number,:terms_and_conditions) 结束
听到users_attributes是我的另一种形式。 为我工作。
祝你好运。
答案 1 :(得分:0)
您在ProductsControler @contact = :set_contact
的方法#show中有错字,应该在没有set_contact
的情况下调用方法:
正确的代码:@contact = set_contact