ruby-on-rails - 如何使用 Rabl 读取 "order by id "JSON

标签 ruby-on-rails ruby-on-rails-3 json rabl

我想要 json 输出顺序按 id(child id)

我可以解决这个问题吗?

这是我项目中的一些代码

show.json.rabl(我使用Rabl)

object @book
attributes :id , :name 

child :questions do
  attributes :id , :name
end

books_controller.rb

def show
    @book = Book.find(params[:id])
end

抱歉我的英语不好,谢谢。

最佳答案

这取决于您的应用以及您想要完成的任务,但您可以在 Question 模型中定义一个 default_scope,如下所示:

class Question < ActiveRecord::Base
  default_scope order('id ASC')
end

或者您可以在 Book 模型中定义 default_scope:

class Book < ActiveRecord::Base
  default_scope joins(:questions).order('questions.id ASC')
end

如果您想立即加载问题,请使用includes 而不是join

关于ruby-on-rails - 如何使用 Rabl 读取 "order by id "JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9553593/

相关文章:

ruby-on-rails - 问题 : activerecord (rails3), 使用包含链接作用域

ruby-on-rails - ElasticSearch将映射添加到数字,给我错误

javascript - 如何在 ruby​​ on Rails 中将文本值迭代为 Active Record 模型名称格式?

ruby-on-rails - Bundler 找不到 gem "activemodel"的兼容版本

ruby-on-rails-3 - 用回形针上传很慢( unicorn )

c# - 为 WCF REST 服务生成示例数据?

java - 该对象与 JSON/XML 之间的(解)编码可能会破坏到什么程度

ruby-on-rails-3 - 忽略 ActiveRecord 中的列

ruby-on-rails - 使用 Fog 和 Amazon S3 的公共(public) URL

java - 重写 spring-security BadCredentialsException 的容器响应