在Rails中使用Postgres row_to_json()函数

时间:2014-06-02 15:22:21

标签: ruby-on-rails ruby json postgresql

在Rails 4.x中,我试图弄清楚如何直接从Postgres返回JSON,所以我没有返回一堆ActiveRecord对象(或哈希),然后我需要保留在内存中序列化为JSON。由于Postgres现在可以原生地返回JSON,因此编写JSON API似乎要好得多。

在Postgres中,对于一个名为books的表,我会写一些类似的东西:

select row_to_json(books) from books;

通常情况下,在Rails中,我会执行类似Book.all的操作来加载它们,但我想使用row_to_json函数。如何在不手动编写SQL查询的情况下执行此操作?

理想情况下,我会执行Book.all.rows_to_json之类的操作来返回JSON字符串。

想要render json: @books,因为它将使用内置解析器,并在AR对象上加载所有内容。

0 个答案:

没有答案