【问题标题】:Trouble returning id from ajax creation无法从 ajax 创建返回 id
【发布时间】:2012-12-19 23:31:20
【问题描述】:

我正在学习如何将 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 包裹在其中,导致错误。

【问题讨论】:

  • 您应该删除问题或将您的解决方案作为答案发布,这样人们就知道它已经解决了,而无需阅读整篇帖子。

标签: ruby-on-rails ajax activerecord


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-30
    • 2011-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-20
    • 2011-02-04
    相关资源
    最近更新 更多