在 Rails 中订购 Postgres jsonb

Ordering Postgres jsonb in Rails

我正在尝试按 rails 中的 jsonb 列进行排序,使用:

Stat.order("data ->'likes'->'followed_by' ASC")

我不断收到此错误消息。

PG::UndefinedFunction: ERROR:  could not identify an ordering operator for type json

我不知道这是我的格式吗? followed_by 属性是一个整数。

谢谢!

我不确定,但根据 http://www.postgresql.org/docs/9.3/static/functions-json.html

  1. -> "Get JSON object field"
  2. ->> "Get JSON object field as text"

所以 activerecord 可能无法对 field 进行排序但可以对 text 进行排序?

尝试:Stat.order("data ->'likes'->>'followed_by' ASC")