我正在学习如何使用ajax与rails,除了一个持久性问题,我没有太多麻烦。我有一个用户过去使用过的地址的下拉列表。然后我有一个“使用新地址”按钮,可以调出一个模态地址表单。然后我想通过ajax提交该表单,然后将新地址添加到下拉列表中。麻烦从ajax创建返回id
虽然我没有提交表单或创建地址的问题,出于某种原因,我无法访问我的回调中创建的访问的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服务器错误。我认为这可能意味着我不得不将id添加到address.rb中的attr_accessible,但这似乎也没有帮助。有什么我失踪了吗?任何帮助将不胜感激。
编辑:我是个白痴。我没有意识到escape_javascript不应该用于整数,所以我已经包装了@ address.id,导致了错误。
您应该删除问题或将您的解决方案作为答案发布,以便人们知道在未阅读整篇文章的情况下已解决该问题。 –