0

JSONリクエストに対してこのようなモデルを返します

 def index
    @categories = Category.all
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @categories.to_json(:include => :todos) }
  end
end

この@categoriesを返すときに、昇順の:todosと属性が「positon」となるようにします。私がそれをすることができる方法はありますか..?

このようなもの

    render json: @categories.to_json(:include => :todos, :order=>"postion, ASC")

前もって感謝します

4

2 に答える 2

2

category.rbで次のような関連付けを定義できます。

has_many :ordered_todos,
             :class_name => "ToDo",
             :order      => "position ASC"

次に、次のように記述します。

render json: @categories.to_json(:include => :ordered_todos)
于 2013-01-11T18:42:05.717 に答える
1

user1541507には良い答えがあります。

注文にhas_manyアプローチを使用したくない場合、および計算された属性を追加したい場合は、jbuilderを使用し、jsonを表示するためのビューを作成することを検討してください。これがそれをうまく説明するレールキャストです。

于 2013-01-12T01:16:32.530 に答える