私のRailsアプリケーションでは、シチュエーションと呼ばれるセクションがあります。これは、基本的には状況のテキストによる説明です。しかし、それらのいくつかがあります。私はを1度に1つしか表示せず、それぞれ独自のページ(最新のものを最初に作成したもの)を表示できるようにしたいと考えています。この機能のためのベストデータ構造とデザイン
表示するすべての状況を含む@situations
オブジェクトがコード内にあるとします。次に何をすべきか(コントローラーとビュー内で)。
私のRailsアプリケーションでは、シチュエーションと呼ばれるセクションがあります。これは、基本的には状況のテキストによる説明です。しかし、それらのいくつかがあります。私はを1度に1つしか表示せず、それぞれ独自のページ(最新のものを最初に作成したもの)を表示できるようにしたいと考えています。この機能のためのベストデータ構造とデザイン
表示するすべての状況を含む@situations
オブジェクトがコード内にあるとします。次に何をすべきか(コントローラーとビュー内で)。
私は、ページネーション(will_paginate
)を使用し、その後、あなたのリンクを作成するcurrent_page
とnext_page
を使用することができます。1.
にページあたりの項目数を設定すると思います。ここではsourceを参照してください。
その他の変更点はwill_paginate
に必要な標準のインデックスアクションに過ぎないことです。
このscreencastは、あなたが必要としていることを知っているはずですが、プラグインが作成されてから変更が加えられていることに注意してください。詳細はwill_paginate
github wiki.
モデル/ 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>
下部のリンクはどうですか? 1ページあたり1つの状況。 – jonty
ここでは、http://gitrdoc.com/rdoc/mislav/will_paginate/8888651be8d6656bdf2378731d91a8badbaa2556/classes/WillPaginate/ViewHelpers.html#M000131は、必要なものを正確に行うための情報です。 – klew
ニース。そのrdocをどうやって見つけましたか? – srboisvert