私は Rails に精通していません。ABC コントローラーで足場を使用すると、インデックス ページに ABC.all が出力されますが、id > 100 および <500 のデータを表示したいのですが、どうすればこれを達成できますか?
なぜなら、最初と最後の方法があることしか知らなかったからです。and offset,and limit は使用できない方法です。
ありがとう〜
私は Rails に精通していません。ABC コントローラーで足場を使用すると、インデックス ページに ABC.all が出力されますが、id > 100 および <500 のデータを表示したいのですが、どうすればこれを達成できますか?
なぜなら、最初と最後の方法があることしか知らなかったからです。and offset,and limit は使用できない方法です。
ありがとう〜
ActiveRecord
where
これにはメソッドを使用します。その中に文字列クエリを入力できます。次に例を示します。
ABC.where('id > 100 AND id < 500')
魔法はありません。ただ古き良きものwhere
です。
PS:ActiveRecord
たくさんのメソッドがあります。これを読むことをお勧めします。http://guides.rubyonrails.org/active_record_querying.html
アップデート:
translates_controller.rb
def index
@translates = Translate.where('id > 100 AND id < 500')
# Stuff...
index.html.erb
<% @translates.each do |t| %>
# Stuff...
MurifoX の回答が最良ですが、このクエリを順序、制限、およびオフセットで構成することもできることを指摘したいと思います。
ABC.order(:id).offset(100).limit(399)
あなたの質問では、 limit と offset は利用できないメソッドであることに注意してください。ActiveRecord::Base