可以说我有一个葡萄酒和啤酒模型/控制器,以及具有许多关系的wine_review和beer_review模型。为两个具有类似数据类型的模型干涸代码
每个表都有几乎相同的数据类型,例如wine_review和beer_review都有一个评级和评论栏。 酒和啤酒每个都有名字。
我该如何干起我的代码,以便他们可以共享相同的视图。
现在我有两个意见做同样的事情,一次用于啤酒,一次用于葡萄酒。
<% @wine_reviews.each do |review| -%>
<ul>
<li><%= link_to review.wine.name, review.wine %></li>
<li><%= review.rating %></li>
<li><%=h review.comment %></li>
</ul>
<% end -%>
<% @beer_reviews.each do |review| -%>
<ul>
....
....
我真的很想做的是一样的东西
<li><%= link_to review.beverage.name, review.beverage %></li>
当饮料将与这取决于我的渲染当时葡萄酒或啤酒来代替,但我想不出怎么做。
因为review.beverge会中断,所以我无法将饮料作为局部传递给偏食。
谢谢。
我认为用多形性关联来处理这将是这里的首选。 – Ben 2009-11-24 19:52:24
立即检出railscast。看起来这正是我要找的。多谢你们。 – KJF 2009-11-24 19:57:35