【发布时间】:2012-10-03 05:31:08
【问题描述】:
我正在尝试使用 jbuilder 从事件列表中创建一个 json 文件。它必须采用特定格式。目前,无论我在 jbuilder 文件中放入什么,当您转到 users/1/events.json 时,该文件都是空白的(只是 {})。
我已经尝试在控制器中放置一个响应块,但是这只是以错误的格式返回事件列表。
我认为路由已正确完成,因为日志文件显示文件 myevents.json.jbuilder 在请求 url /users/1/myevents.json 时成功呈现。另外,当请求 .html 时,myevents.html 文件显示正常,其中包含所有正确信息。
我真的很难过这个,任何帮助将不胜感激!
我会列出所有相关的代码,以防任何人都可以拿起一些东西:
事件控制器:
def myevents
@events = current_user.events
end
myevents.json.jbuilder:
Jbuilder.encode do |json|
json.timeline do
json.headline current_user.first_name
json.type "default"
json.text "A Timeline"
json.start_date
json.array!(@events) do |event|
json.start_date event.start_date
json.end_date event.end_date
json.headline event.headline
json.text event.text
json.asset do
json.media event.media
json.credit event.credit
json.caption event.caption
end
end
end
end
环境.rb:
Jbuilder.key_format :camelize => :lower
routes.rb:
match 'users/:id/events' => 'events#myevents'
【问题讨论】:
-
你使用的是什么版本的 Rails?
标签: ruby-on-rails json routes jbuilder