我有兩個模型設置:照片和搜索。每張照片都有一個關聯的搜索,我想嘗試在照片視圖中顯示相關的搜索。這裏是我的模型:在Rails視圖中顯示關聯的模型數據
class Photo < ActiveRecord::Base
has_one :search
end
# Data: name:string, photo_url:string, search_id:integer
簡而言之:我不確定是否需要有has_many關聯這裏或沒有。
class Search < ActiveRecord::Base
validates :search_term, :presence => true
has_many :photos
end
# Data: search_term:string
這裏是控制器動作:
def index
@photos = Photo.all
end
最後,視圖模板:
<!-- index.html.erb -->
<section class="photos">
<%= render @photos %>
</section>
<!-- _photo.html.erb -->
<div class="photo__item">
<h1><%= photo.id %>: <%= photo.name %></h1>
<h3>Search_term: <%= photo.search_id.search_term %></h3>
<%= image_tag(photo.photo_url) %>
</div>
我得到的錯誤是:
undefined method `search_term' for 2:Fixnum
我我甚至不完全確定我爲此設置的是c orrect,所以任何幫助將不勝感激。
啊,我和你在一起。我應該在控制器和視圖中更改哪些部分? – gosseti
嘗試photo.search.search_term' – Edo