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><%= 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>
4

2 回答 2

3

你可以试试这个:

<%= link_to rest.name, rest %>

如果您在 config/routes.rb 中定义了一个资源餐厅,它将定位到由助手 restaurant_path(rest) 给出的 url(即 /restaurants/id_of_restaurant)。

由于餐厅是一个城市的孩子,您可能希望有一个类似 /cities/id_of_city/restaurants/id_of_restaurant 这样的网址,因此您可以尝试以下操作:

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

确保在你的 config/routes.rb 中有这个,以便生成相应的帮助程序。

resources :cities do
  resources :restaurants
end

然后,您将能够使用终端中的“rake routes”命令查看路线的所有可用助手。

于 2013-05-05T16:38:21.690 回答
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>

但是现在当我将鼠标悬停在链接上时,链接非常难看?我该如何摆脱它?

于 2013-05-05T16:28:41.157 回答