Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails中的命名错误是什么?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails rails中的命名错误是什么?

Ruby on rails rails中的命名错误是什么?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我不是rails的新手,所以这很尴尬,但我一直收到一个命名错误,我不知道发生了什么 这就是错误所在 这是我的控制器 在find_item中,您设置的是@post,而不是@item,这使得它在视图中为零。在本例中,当您正在访问的实例中没有匹配的方法时,就会发生这种情况。在本例中,如果您查看show操作,它只执行find_项,而find_项只返回@post实例,而不是@item实例 只需将控制器中的@post更改为@item,ActiveRecord就会自动为实例属性提供getter和setter方

我不是rails的新手,所以这很尴尬,但我一直收到一个命名错误,我不知道发生了什么

这就是错误所在

这是我的控制器


在find_item中,您设置的是@post,而不是@item,这使得它在视图中为零。

在本例中,当您正在访问的实例中没有匹配的方法时,就会发生这种情况。在本例中,如果您查看show操作,它只执行find_项,而find_项只返回@post实例,而不是@item实例


只需将控制器中的@post更改为@item,ActiveRecord就会自动为实例属性提供getter和setter方法@item.title调用@item对象上的title方法。如果方法未在调用它的对象上定义,则会引发NoMethodError异常

访问show时看到的错误是因为@item实例变量未在控制器中初始化,因此在视图文件show.html.erb中不可用,即默认为nil,Rails抱怨nil对象上没有方法标题,因为nil对象没有该方法,@item或@post可能会有它,这取决于相应的表是否有该列

请阅读文档,并将源代码以纯文本而不是图像的形式显示。请阅读,然后删除图像,并将消息文本复制/粘贴到问题中,以及演示问题的绝对最小代码,搜索引擎也不能索引它们,这有助于其他人找到你的问题并解决他们的编码问题。