.to_json
我想知道如何在 DataMappers方法生成的 JSON 末尾添加另一个键值对。当我尝试调用to_json(:methods => [:total_pages])
时,它会忽略所有方法。
我希望它产生这样的东西:
{
'data': [rows go here],
'total_pages': X
}
有没有办法只做内联方法或其他方法?
谢谢!
.to_json
我想知道如何在 DataMappers方法生成的 JSON 末尾添加另一个键值对。当我尝试调用to_json(:methods => [:total_pages])
时,它会忽略所有方法。
我希望它产生这样的东西:
{
'data': [rows go here],
'total_pages': X
}
有没有办法只做内联方法或其他方法?
谢谢!
你可以做的更简单。
{
data: YourModel.your_whatever,
total_pages: YourModel.total_pages
}.to_json
DM 序列化 to_json 尝试调用它自己调用的同一对象的选项中提供的方法(在您的情况下 - 可能是结果集合,没有定义 total_pages 方法)
您可以编辑 JSON 字符串,但据我所知,没有简单的方法可以将任意值注入 JSON。
调用your_dm_resource.to_json(:methods => [:total_pages])
是做你想做的事的正确方法,检查你的some_dm_resource.total_pages
方法是否以你期望的方式工作。
如果你使用的是现代 Ruby,你可以放下哈希火箭:
your_dm_resource.to_json(methods: [:total_pages])