1
4

2 に答える 2

0

最近アップロードされた曲を含むインスタンス変数をコントローラー アクションからビューに渡します。

# app/controllers/songs_controller.rb
def index
    @songs = Song.order('plusminus')
    @newest_songs = Song.order('created_at DESC').limit(10) # returns the ten most recently uploaded songs
end

@newest_songsビューでは、インスタンス変数を介して最新の 10 曲にアクセスできます。

# app/views/songs/index.html.erb
<h1>Highest Voted Songs</h1>
<% @songs.each do |song| %>
    # view logic
<% end %>

<h1>Newest Songs</h1>
<% @newest_songs.each do |song| %>
    # view logic
<% end %>

または、まったく別のビューで最新の曲を表示したい場合は、次のようなことを行うことができます。

# app/controllers/songs_controller.rb
def new_songs
    @songs = Song.order('created_at DESC')
end

# app/views/songs/new_songs.html.erb
<h1>Newest Songs</h1>
<% @newest_songs.each do |song| %>
    # view logic
<% end %>

# config/routes.rb
resources :songs do
    collection do
        get 'new_songs' # creates route from `songs/new_songs` to the `songs#new_songs` controller action
    end
end 
于 2013-07-29T00:48:23.750 に答える