2013-05-05 73 views
0

我的页面中有这个循环,显示我模型中的所有城市。可以说纽约市是这些城市之一,我只想访问纽约市。如何从Rails中的模型访问特定的城市实例?从html访问模型

<% @cities.each do |city| %> 
     <tr> 
     <td><%= city.name %></td> 
     <td><%= city.country %></td> 
     <td><%= link_to 'Show', city %></td> 
     <td><%= link_to 'Edit', edit_city_path(city) %></td> 
     <td><%= link_to 'Destroy', city, method: :delete, data: { confirm: 'Are you sure?' } %></td> 
     </tr> 
    <% end %> 
+0

你可以写什么,你的确切意思是'访问'? – Lucas 2013-05-05 02:55:46

+0

我希望能够做到像​​<%= link_to'Show',NewYork%> – 2013-05-05 03:07:13

回答

1

使用该对象的属性来访问视图对象:

例如,如果你所在的城市的name属性是“纽约市”,那么你会说:

City.find_by_name("New York City") 

当然,它不是超级railsy做到这一点的看法,所以这只是要添加到相关的控制器动作:

@newyork = City.find_by_name("New York City") 

并在您看来使用@newyork

+0

并且我能做点像<%= link_to'Show',@newyork%> – 2013-05-05 03:48:20

+0

所以,第二个参数到'link_to'必须是一个路径,所以你应该做'<%= link_to'Show',city_path(@newyork)%>' – abhir 2013-05-05 03:50:25