2012-12-19 51 views
-1

我正在学习如何使用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,导致了错误。

+0

您应该删除问题或将您的解决方案作为答案发布,以便人们知道在未阅读整篇文章的情况下已解决该问题。 –

回答

0

哎呦。问题是我没有意识到escape_javascript不应该用于整数,所以我已经包装了@ address.id,导致了错误。