2012-10-26 89 views
0

在迈克尔·哈特尔的精彩教程listing 11.36,改变了取消关注形式使用AJAX,但我不断收到当我点击“取消关注”按钮,出现以下错误:迈克尔·哈特尔Rails的教程 - 清单11.36(AJAX取消关注)错误

ActionView::Template::Error (undefined method `model_name' for NilClass:Class): 

的形式,但是,没有工作。如果我点击“取消关注”,我取消关注当前显示的用户。如此看来,当表单提交@user形式的声明是有效的:

<%= form_for(current_user.relationships.find_by_followed_id(@user), 
     html: { method: :delete }, 
     remote: true) do |f| %> 

但也许当“关注”形式试图加载它不再可用?

我在长度试图追踪下来,但我无法弄清楚,我还没有看到任何人张贴了同样的问题。

任何线索?

谢谢。

+0

我回答了我自己的问题。见下文。 – bergie3000

回答

0

Agh ...愚蠢的错误。

我已经复制了应用程序/视图/关系/ create.js.erb到应用程序/视图/关系/ destroy.js.erb的代码。复制并粘贴错误。

对不起,虚惊一场。谢谢你的时间。

0

我不知道,但如果异步调用的工作及以下用户参考成功地从引用@user指向零导致此参考刚刚被删除的数据库中删除?

0

你已经按照你的人际关系控制器定义的动作?

def destroy 
    @user = Relationship.find(params[:id]).followed 
    current_user.unfollow!(@user) 
    respond_to do |format| 
     format.html { redirect_to @user } 
     format.js 
    end 
    end 
+0

是的,我在我的关系控制器中有该代码。看到我上面的回应。感谢您的答复。 – bergie3000

相关问题