2013-05-05 78 views
0

我有下表,我想要我的「餐廳」的名稱是可點擊的並鏈接到該餐廳的頁面。Rails鏈接與模型對象路徑

<table class="table table-striped"> 
    <tr> 
     <th>Name</th> 
     <th>Adress</th> 
     <th>City</th> 
     <th>No. of Recipies</th> 
    </tr> 
<% @city.restaurants.each do |rest| %> 
    <tr> 
    <td><%= rest.name %></td> 
    <td><%= rest.adress %></td> 
    <td><%= rest.city.name %></td> 
    <td>5</td> 
    </tr> 
<% end %> 

我怎麼會喜歡rest_path添加的東西:

<a href="url">Link text</a> 

回答

3

你可以試試這個:

<%= link_to rest.name, rest %> 

如果你已經在你的config/routes.rb中定義的資源的餐廳,將目標由輔助restaurant_path(休息)(即/餐廳/ id_of_restaurant給出的網址)。

由於餐廳是一個城市的孩子,你可能希望有一個像/城市/ id_of_city /餐廳/ id_of_restaurant的網址,以便您可以嘗試以下方法:

<%= link_to rest.name, city_restaurant_path(@city, rest) %> 

一定有這個你config/routes.rb以生成相應的幫助程序。

resources :cities do 
    resources :restaurants 
end 

然後,您將能夠使用終端中的命令'rake routes'來查看所有可用的路由助手。

0

好了,所以我做了這樣的事情

<table class="table table-striped"> 
    <tr> 
     <th>Name</th> 
     <th>Adress</th> 
     <th>City</th> 
     <th>No. of Recipies</th> 
    </tr> 
<% @city.restaurants.each do |rest| %> 
    <tr> 
    <td><%= link_to rest.name, rest %></td> 
    <td><%= rest.adress %></td> 
    <td><%= rest.city.name %></td> 
    <td>5</td> 
    </tr> 
<% end %> 

</table> 

但現在的鏈接是很醜陋,當我將鼠標懸停在它?我該如何擺脫?

+0

你只是把CSS放在你的鏈接上... – hypee 2013-05-05 16:40:22