【发布时间】:2014-03-06 16:04:23
【问题描述】:
我正在构建的应用程序的一部分是 API。最近的更改意味着我需要将两个不同版本的数据放入我的 json 提要中。我认为最好的方法是在数据库中进行必要的更改,然后创建一个虚拟属性来连接数据。
在我的模型中,我有 event_summary 虚拟属性,使用 <%= @event.event_summary => 在视图中输出没有问题:
def event_summary
"#{title} (#{start_datetime.strftime('%A %d %b, %l:%M%P')})"
end
在我的 API 控制器中,我有一个选择查询,用于获取 API 响应所需的属性(此处为简化版):
respond_to :json
def index
respond_with Event.select('title, event_summary')
end
问题是它总是返回一个未定义的列错误:
PG::UndefinedColumn: ERROR: column "event_summary" does not exist LINE 1: SELECT title, event_summary FROM "events"
我也尝试了以下方法,但得到了相同的结果:
respond_with Event.select('title', :event_summary)
如果这有什么不同的话,我正在使用 Postgres。
有没有办法做到这一点?
谢谢!
【问题讨论】:
标签: ruby-on-rails postgresql activerecord ruby-on-rails-4