为什么我收到此错误?

时间:2011-04-20 20:09:44

标签: ruby-on-rails ruby ruby-on-rails-3 debugging

删除comment_title时出现此错误:

NoMethodError in Comment titlesController#destroy

undefined method `comment_titles' for #<User:0x102e63bf8>

这是破坏方法:

def destroy
  @comment_title = current_user.comment_titles.find(params[:id])
  @comment_title.destroy
  respond_to do |format|
    format.html {redirect_to :back}
  end
end

并且错误引用了这一行:

@comment_title = current_user.comment_titles.find(params[:id])

我不明白这里发生了什么。是说current_user是零吗?这没有意义,因为我已登录,而current_user在我的应用程序的其他部分工作。这之前也有用,但在我的应用程序中进行了很多更改之后,它不会突然发挥作用。

出了什么问题,我该如何解决?

(请不要问我从现在开始做什么,直到删除工作。我已经做了太多的事情,因为它有用。)

2 个答案:

答案 0 :(得分:3)

好像你还没有

has_many :comment_titles

User模型中

答案 1 :(得分:0)

它说User对象没有方法“comment_titles”。如果没有看到你的型号代码,我就不能更具体了,但我建议你在那里寻找更多的线索。是否有称为“comment_titles”的方法或关联?