Ruby on rails Rails:Resolve";“你有很多”;只按需
我只将rails用作后端,将JSON数据提供给Ember前端应用程序 我的数据库结构是非常串联的,就像leeds到rails在每个请求上加载完整的数据库一样 我该怎么处理呢 例如,我有一个博客,博客“有很多”文章,文章“有很多”评论等等。当我想查看一个博客时,我不在乎评论,我所需要的只是文章列表Ruby on rails Rails:Resolve";“你有很多”;只按需,ruby-on-rails,database,has-many,Ruby On Rails,Database,Has Many,我只将rails用作后端,将JSON数据提供给Ember前端应用程序 我的数据库结构是非常串联的,就像leeds到rails在每个请求上加载完整的数据库一样 我该怎么处理呢 例如,我有一个博客,博客“有很多”文章,文章“有很多”评论等等。当我想查看一个博客时,我不在乎评论,我所需要的只是文章列表 那么,当我不需要文章时,如何防止rails解决文章中的“has_many”关系呢?我想我已经找到了解决方案。。。不确定这是否是最好的方法,但它有效。。。我向控制器添加了一些条件,现在看起来像: def
那么,当我不需要文章时,如何防止rails解决文章中的“has_many”关系呢?我想我已经找到了解决方案。。。不确定这是否是最好的方法,但它有效。。。我向控制器添加了一些条件,现在看起来像:
def index
@offices = Office.all
render json: @offices.as_json(
only: [:id, :title, :created_at],
include: {
addresses: {
except: [:contacts]
}
}
)
end
我想我已经找到解决办法了。。。不确定这是否是最好的方法,但它有效。。。我向控制器添加了一些条件,现在看起来像:
def index
@offices = Office.all
render json: @offices.as_json(
only: [:id, :title, :created_at],
include: {
addresses: {
except: [:contacts]
}
}
)
end
如果使用
Blog.find(ID)
Rails将不会自动加载所有相关记录。如果是这样,那么您可能在某个地方出错。请提供更多用于调试的数据,如代码示例、查询日志等。好的,今天晚些时候,当我回到我的电脑时,我将提供一些代码。但从技术上讲:一切都很简单:我有一个序列化程序定义属性、关系和嵌入embed:id,包括:true attributes:id,:name,:内容有许多:注释
和控制器用JSON响应响应_:JSON def index响应_与Article.all end重复,因为在我的配置文件中添加了解除润滑警告。ActiveModel::Serializer.setup do | config | config.embed=:ids config.embedded_in_root=true end
。。。。这可能是个问题……如果使用Blog.find(ID)
Rails将不会自动加载所有相关记录。如果是这样,那么您可能在某个地方出错。请提供更多用于调试的数据,如代码示例、查询日志等。好的,今天晚些时候,当我回到我的电脑时,我将提供一些代码。但从技术上讲:一切都很简单:我有一个序列化程序定义属性、关系和嵌入embed:id,包括:true attributes:id,:name,:内容有许多:注释
和控制器用JSON响应响应_:JSON def index响应_与Article.all end重复,因为在我的配置文件中添加了解除润滑警告。ActiveModel::Serializer.setup do | config | config.embed=:ids config.embedded_in_root=true end
。。。。那可能是个问题。。。