-1

我正在学习如何将 ajax 与 rails 一起使用,除了一个持续存在的问题外,我没有遇到太多麻烦。我有一个用户过去使用过的地址的下拉列表。然后我有一个“使用新地址”按钮,它会显示一个模式地址表单。然后我想通过 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 服务器错误。我认为这可能意味着我必须将 id 添加到 address.rb 中的 attr_accessible,但这似乎也没有帮助。有什么我想念的吗?任何帮助将不胜感激。

编辑:我是个白痴。我没有意识到 escape_javascript 不应该用于整数,所以我将 @address.id 包裹在其中,导致错误。

4

1 回答 1

0

哎呀。问题是我没有意识到 escape_javascript 不应该用于整数,所以我把 @address.id 包装在里面,导致错误。

于 2012-12-20T01:33:17.550 回答