设计嵌套属性表单字段不显示
Devise nested attributes form field not showing
我在查看表单中的嵌套属性字段时遇到问题。我在 jobs/new
视图中,我想要一个用户表单来创建作业和用户。
这个答案我什么都有Rails 4.0 with Devise. Nested attributes Unpermited parameters
这个我也看过Nested attributes not showing up in simple form
但是后一个答案已经适用于我的代码并且没有出现。我的代码:
工作模型
belongs_to :user
用户模型
has_many :jobs
accepts_nested_attributes_for :jobs
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :confirmable
Jobs/new 查看
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<%= f.fields_for :jobs do |builder| %>
<%= render "job_detail_fields", :f => builder %>
<% end %>
<%= f.email_field :email, placeholder: "Enter email", class: "full-width form-field" %>
<% end %>
_job_details_fields
<%= f.text_area :job_description, placeholder: "Job description..." %>
:job_description
text_area 未显示。如果我将嵌套属性表单更改为 f.fields_for :job
之类的内容,它将显示,但在提交表单时我得到 unpermitted paramater job 作为错误。我很确定 jobs
是正确的,但我不知道为什么它没有显示。有什么想法吗?
啊,看一下 Rails 演员,看起来我需要 build
:job_description。
这在我的作业控制器中修复了它 1.times { @resource.jobs.build }
。
作业控制器
def new
@resource ||= User.new
1.times { @resource.jobs.build }
end
我在查看表单中的嵌套属性字段时遇到问题。我在 jobs/new
视图中,我想要一个用户表单来创建作业和用户。
这个答案我什么都有Rails 4.0 with Devise. Nested attributes Unpermited parameters
这个我也看过Nested attributes not showing up in simple form
但是后一个答案已经适用于我的代码并且没有出现。我的代码:
工作模型
belongs_to :user
用户模型
has_many :jobs
accepts_nested_attributes_for :jobs
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :confirmable
Jobs/new 查看
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<%= f.fields_for :jobs do |builder| %>
<%= render "job_detail_fields", :f => builder %>
<% end %>
<%= f.email_field :email, placeholder: "Enter email", class: "full-width form-field" %>
<% end %>
_job_details_fields
<%= f.text_area :job_description, placeholder: "Job description..." %>
:job_description
text_area 未显示。如果我将嵌套属性表单更改为 f.fields_for :job
之类的内容,它将显示,但在提交表单时我得到 unpermitted paramater job 作为错误。我很确定 jobs
是正确的,但我不知道为什么它没有显示。有什么想法吗?
啊,看一下 Rails 演员,看起来我需要 build
:job_description。
这在我的作业控制器中修复了它 1.times { @resource.jobs.build }
。
作业控制器
def new
@resource ||= User.new
1.times { @resource.jobs.build }
end