Ruby on rails 在索引页中将嵌套表单文本字段显示为文本
我对Rails完全陌生,所以我很抱歉问了一个愚蠢的问题: 这是生成我的表单及其嵌套表单的代码:Ruby on rails 在索引页中将嵌套表单文本字段显示为文本,ruby-on-rails,nested-forms,fields-for,Ruby On Rails,Nested Forms,Fields For,我对Rails完全陌生,所以我很抱歉问了一个愚蠢的问题: 这是生成我的表单及其嵌套表单的代码: <%= form_for @job do |form| %> <div><%= form.label :department %><%= form.text_field :department %></div> <div><%= form.label :enabled %><%
<%= form_for @job do |form| %>
<div><%= form.label :department %><%= form.text_field :department %></div>
<div><%= form.label :enabled %><%= form.check_box :enabled %></div>
<!-- job description form -->
<%= form.fields_for :job_descriptions do |subform| %>
<div><%= subform.hidden_field :language %></div>
<div><%= subform.object.language %></div>
<div><%= subform.label "Job Name" %><%= subform.text_field :title %></div>
<div><%= subform.label "Header" %><%= subform.text_field :short_text %></div>
<div><%= subform.label "Content" %><%= subform.text_area :text %></div>
<% end %>
<!-- end of job description form -->
<div><%= form.submit %></div>
<% end %>
虽然这是index.html.erb的一部分,我想在其中显示子表单中的文本字段,例如:title,:short\u text和:text作为静态文本(在这种特殊情况下,我尝试使用:title):
我得到的错误是:
undefined method `title' for #<Job:0x007fcdde2001a8>
未定义的方法“title”#
我的作业.rb文件如下所示:
class Job < ActiveRecord::Base
has_many :job_descriptions, :dependent => :destroy
accepts_nested_attributes_for :job_descriptions
def self.languages
[:de, :en]
end
end
类作业:销毁
接受以下内容的\u嵌套\u属性\u:job\u description
def self.languages
[:de,:en]
结束
结束
非常感谢您的帮助。
<%= form_for @job do |form| %>
...
<%= form.fields_for :job_descriptions do |subform| %>
<% if subform.object.active? %>
<%= subform.text_field :title %>
<% end %>
<% end %>
...
<% end %>
...
...
Job对象上没有“title”属性,只有JobDescription有“title”。我想你希望每种语言都有一份单独的工作描述,是吗?你想在jobs index页面上显示每个jobs Description,还是一种语言的jobs Description,还是什么?我想在jobs index页面上显示每个jobs Description的每个标题,我解决了在jobs Controller中添加jobs Description的问题,它丢失了。谢谢你的帮助。
<%= form_for @job do |form| %>
...
<%= form.fields_for :job_descriptions do |subform| %>
<% if subform.object.active? %>
<%= subform.text_field :title %>
<% end %>
<% end %>
...
<% end %>