0

如何解决这个问题。我构建了一个旅行应用程序,我将在其中保存有关许多地方的数据,这些数据具有名称、简短描述、价格等属性。我还喜欢保存一个指向其静态页面的 url,该页面将包含有关该位置的更多信息。

因为我想显示关于这个地方的详细信息(历史、文化、交通信息等),所以你选择创建一个静态页面。

现在,当用户使用某些参数进行搜索时,我喜欢在显示页面中加载使用静态页面 url 包装的结果。

现在,如何做到这一点。更重要的是,这是一个好方法吗?

4

1 回答 1

0

这是一个相当广泛的问题,所以我希望我能以正确的方式回答它。假设您将数据存储在数据库中,我将拥有该数据的资源控制器,例如:

数据库表:

地方
- 名称(字符串:255)
- 描述(字符串:255)
- 价格(字符串:255)
- ...ETC...

然后,您将拥有一个控制器 places_controller,例如带有一个索引方法,该方法将获取您想要搜索的参数。因此,用户将能够使用以下形式构建 URL:://localhost:3000/places?q=new%20york

然后将 gem 用作 Ransack,您可以在此处阅读所有相关信息:https ://github.com/ernie/ransack

因此,一旦您拥有正确的记录,只需在索引上呈现这些记录,您的索引可能看起来像这样:

Search results:
<ul>
 <% @places.each do |place| %>
   <li>
     <%= link_to place.name, places_url(place) %>
   </li>
 <% end %>
</ul>

place_url 是 Rails 提供的一种方法,但您可以将其替换为帮助程序中的方法,该方法可以生成静态页面 url。或者您可以将静态页面 url 呈现为属性,例如link_to place.name, place.static_url

高温下,

于 2013-11-01T18:47:11.960 回答