Tôi tự hỏi nếu có thể ra lệnh cho đơn đặt hàng (tức là: order => 'created_at DESC') trong chế độ xem. Tôi nhận ra rằng logic trong quan điểm không phải là lý tưởng nhưng tôi dường như có một số vấn đề định vị nơi để ảnh hưởng đến đầu ra này.Đặt hàng kết quả .each trong chế độ xem
Ví dụ, đây là mã của tôi:
<% @user.questions.each do |question| %>
<%= link_to_unless_current h (question.title), question %>
Created about <%= time_ago_in_words h(question.created_at) %> ago
Updated about <%= time_ago_in_words h(question.updated_at) %> ago
<%= link_to 'Edit', edit_question_path(question) %> |
<%= link_to 'Destroy', question, :confirm => 'Are you sure?', :method => :delete %>
<% end %>
Trong QuestionsController của tôi, tôi có action index sau nhưng nó không được làm ảnh hưởng đến sản lượng từ các mã trên.
class QuestionsController < ApplicationController
def index
@questions = Question.all(:order => 'created_at DESC', :limit => 20)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @questions }
end
end
end
UPDATE: liên quan đến việc thay đổi user.questions @ để @questions Với tôi nhận được lỗi này:
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each
UPDATE 2: Tôi đoán tôi nên đề cập đến rằng mã này là trong câu hỏi thể hiện quan điểm . views/questions/show.html.erb.
Đã chỉnh sửa câu trả lời của tôi:] –