在我的Rails应用程序中,我有一个名为Situations的部分,它基本上是对情况的文本描述。但是有几个。我希望能够一次只显示一个,并且每个都显示在自己的页面上(最新创建的那个),然后在页面底部我有链接转到旧版和更新的情况。
假设我的代码中有一个@situations
对象,其中包含我想要显示的所有情况。接下来我应该做什么(在控制器和视图中)。
答案 0 :(得分:3)
我会使用分页(will_paginate
)并将每页的项目数设置为1.
然后,您可以使用current_page
和next_page
建立链接。请在此处查看source。
除此之外,它只是一个标准索引操作,需要对will_paginate
进行更改。
这个screencast应该让你知道你需要什么,但要注意插件自制作以来已经有了一些变化。详细信息位于will_paginate
github wiki.
答案 1 :(得分:1)
模型/ situation.rb
class Situation < ActiveRecord::Base
default_scope :order => 'created_at desc'
end
控制器/ situations_controller.rb
class SituationsController < ActionController::Base
def index
@situations = Situation.all
end
end
视图/情况/ index.html.erb
<h1>Situations</h1>
<%= render @situations %>
视图/情况/ _situation.html.erb
<h2><%= situation.name -%></h2>
<p><%= situation.description -%></p>