我正在学习如何使用带有rails的ajax,除了一个持久性问题之外我没有遇到太多麻烦。我有一个用户过去使用的地址下拉列表。然后我有一个“使用新地址”按钮,显示一个模态地址表单。然后我想通过ajax提交该表单,然后将新地址添加到下拉列表中。
虽然我提交表单或创建地址没有问题,但由于某种原因,我无法在回调中访问已创建访问权限的ID。这是上下文的一些代码:
class AddressesController < ApplicationController
respond_to :js
def create
@address = current_user.addresses.build(params[:address])
@address.save
respond_with(@address)
end
end
然后应该将数据提供给create.js.erb。在该文件中,访问@ address.city或@ address.state没有问题,但是当我尝试访问@ address.id时,我的ajax调用开始出现500服务器错误。我认为这可能意味着我必须在address.rb中添加id到attr_accessible,但这似乎也没有帮助。有什么东西我不见了吗?任何帮助将不胜感激。
编辑:我是个白痴。我没有意识到escape_javascript不应该用于整数,因此我将@ address.id包装在其中,导致错误。答案 0 :(得分:0)
糟糕。问题是我没有意识到escape_javascript不应该用于整数,因此我将@ address.id包装在其中,导致错误。