我正在尝试使用AJAX测试在rails中列出下载的项目。直到部分的一切似乎都正常工作。我唯一可以返回它的是ID元素,因此download.id
可以工作,甚至可以download.someotherobject.id
工作(例如:在:belongs_to关系中)。但是如果我尝试从下载对象中提取任何其他属性(例如下面示例中的token属性),它就会无声地失败。我在日志或javascript控制台中没有出现任何错误。
我的测试方法:
def download
@download = Download.find(15)
respond_to do |format|
format.js {@download}
end
end
我的download.js.erb:
$('#start_download_link').after(<%= render(@download) %>);
我的下载/ _download.html.erb
<%= download.token %>
这是日志:
Started GET "/start/download" for 127.0.0.1 at 2011-12-09 21:09:22 -0500
21:09:22 web.1 | Processing by StartController#download as JS
21:09:22 web.1 | Download Load (1.2ms) SELECT "downloads".* FROM "downloads" WHERE "downloads"."id" = ? LIMIT 1 [["id", 15]]
21:09:22 web.1 | Rendered downloads/_download.html.erb (0.1ms)
21:09:22 web.1 | Rendered start/download.js.erb (22.3ms)
21:09:22 web.1 | Completed 200 OK in 119ms (Views: 30.8ms | ActiveRecord: 2.7ms)
除此之外,我在视图中没有得到任何渲染。但是,再次download.id
确实呈现了id。我无法弄清楚出了什么问题。
答案 0 :(得分:0)
如果download.id
正在运行但download.token
不起作用,请尝试检查令牌是否设置为空的字段。