我第一次阅读了Hartl教程,并且在第10章编辑/更新用户时出现了错误。接下来,我>>should<<至少能够查看用户编辑页面,但仍然会得到以下错误。每件事都经历过几次,但似乎找不到我问题的根源。请注意,这是我第一次做任何与编程相关的事情,所以请慢慢来。
错误
用于NilClass的
未定义方法`model_name‘:类
从“用户编辑”视图中错误地调用行。
<%= form_for(@user) do |f| %>
用户控制器的编辑方法
def edit
@user = User.find(params[:id])
@title = "Edit user"
end在我的用户新视图中使用了类似的代码块,没有任何问题,并且不知道为什么这将返回零,并尝试与新的和现有的用户。谢谢!
发布于 2012-10-30 05:40:27
我只是遇到了同样的问题,看起来发生这种情况是因为您的“编辑”操作没有定义。您是否没有保存user_controller文件,或者忘记定义“编辑”变量?
发布于 2012-03-13 20:02:47
这个错误有点模糊。这是说@user in <%= form_for(@user) do |f| %>是零。很可能@user = User.find(params[:id])没有发现任何东西。值得将Rails.logger.debug("Id: #{params[:id]}")放在@user = User.find(params[:id])之上,看看params[:id]的作用是什么。
这个SO post也有类似的问题,尽管本教程没有。异常来自form_for。
https://stackoverflow.com/questions/9690818
复制相似问题