在 Rails 3.2 应用程序中,我有一个咖啡脚本函数,其中包含一个 POST 以创建带有附件的资产(使用 Carrierwave)
link = url_to_file
parent = $('#dom_obj').data('id')
$.post( url, { remote_file_url: link, parent_id: parent } )
这给出了以下日志:
Started POST "/assets" for 127.0.0.1 at 2013-10-05 14:53:57 +0700
Processing by AssetsController#create as JS
Parameters: {"remote_file_url"=>"https://the/correct/path", "parent_id"=>"520"}
在控制器中
@asset = Asset.new(params[:asset])
@asset.save
我还有其他一些创建资产的方法,它们都可以正常工作。传递给这个 ajax 调用的变量也是正确的。但是 @asset.save 由于上传程序中的错误而失败,这意味着 parent_id 设置不正确。
由于这项工作的所有组件都通过其他上传路径完美工作,我唯一的结论是 jquery ajax 调用不正确,我想我没有正确设置参数(我的控制器中的 params[:asset] 会正确解释参数上面记录?)。
如何将参数传递给 javascript 帖子,以便 Rails 正确解释它们?任何指导都非常感谢,因为我正在兜圈子!