2013-07-26 65 views
0

我完全新的Rails,所以我的愚蠢的問題不好意思:顯示嵌套形式text_field在索引頁文本

這是我的產生形式和嵌套形式的代碼:

<%= 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,我想從我的子窗體顯示text_fields的一部分,如:標題:short_text:文本爲靜態文本(我試圖與:標題在這種特殊情況下):

<% @jobs.each do |job| %> 
    <li> 
     <%= job.title %> 
     <%= job.department %> 
     <%= job.enabled %> 
     <%= link_to 'Show', job_path(job) %> 
     <%= link_to 'Delete', job_path(job), method: :delete, data: { confirm: 'Are you sure?' } %> 
    </li> 
<% end %> 

我得到的錯誤是:

undefined method `title' for #<Job:0x007fcdde2001a8> 

job.rb文件看起來像這樣:

class Job < ActiveRecord::Base 
    has_many :job_descriptions, :dependent => :destroy 
    accepts_nested_attributes_for :job_descriptions 

    def self.languages 
     [:de, :en] 
    end 
end 

非常感謝您提前任何h ELP。

+0

您沒有#title作爲Job對象的屬性,只有一個JobDescription具有#title。我想你想爲每種語言單獨的JobDescription,是嗎?您是否想在作業索引頁面上顯示每個JobDescription,或者針對一種語言顯示JobDescription,或者是什麼? – bgates

+0

我想在作業索引頁面中顯示每個JobDescription的每個標題,我解決了在JobsController中添加JobDescription,它失蹤了。感謝您的幫助。 –

回答

0
<%= form_for @job do |form| %> 
    ... 
    <%= form.fields_for :job_descriptions do |subform| %> 
    <% if subform.object.active? %> 
     <%= subform.text_field :title %> 
    <% end %> 
    <% end %> 
    ... 
<% end %>