У меня есть модельное соотношение, где today
имеет много tasks
Я пытаюсь восстановить объект today
пользователя, включить tasks
и сделать все это Json. Все это продолжалось, пока я не решил заказать tasks
в объекте today
, потому что respond_with block
также используется для рендеринга html-страницы. Есть ли способ включить tasks
и упорядочить их?
Я пробую что-то вроде этого:
class TodaysController < ApplicationController
respond_to :html, :json
def show
@today = Today.where(:user_id => current_user.id).joins(:tasks).includes(:tasks).order(:priority).first
respond_with @today, :include => :tasks
end
end
Это возвращает все правильно, но, похоже, вообще не заказывает задачи.
Это то, что у меня было (что отлично работало, но не имело заказов):
class TodaysController < ApplicationController
respond_to :html, :json
def show
@today = current_user.today
respond_with @today, :include => :tasks
end
end
Я знаю, что могу получить данные и отсортировать их после этого следующим образом:
@today = current_user.today
@today.tasks.sort!{|a,b| a.priority <=> b.priority }
Это работает и будет проходить мои тесты, но я надеялся на способ ActiveRecord для решения этой проблемы.