我使用以下内容输出JSON记录列表:
@team.people.to_json(
:include => [:user, :statistics => {:include => :attribute}]).html_safe
但是,我想只包含对其设置了某个type_id的统计信息。本质上是与用户和统计信息的左外连接,其中统计数据上的type_id
等于某个数字。
答案 0 :(得分:0)
我至少可以想到几个选项:
Person
模型中,覆盖to_json
(或者,更好的是,serializable_hash
)并在那里进行条件化。{:include => :attribute}
{:methods => :foo}
而不是foo
中的条件。以下是我覆盖serializable_hash
的地方的示例,如果它有帮助:
def serializable_hash(options={})
options = {
:methods => [
'client',
'services',
'products',
'has_payments',
]}.update(options)
super(options)
end
我可以想象options =
以上的某些内容,如果type_id
是您要查找的数字,则将methods数组设置为一个,否则为其他内容。