gpt4 book ai didi

ruby-on-rails - 找不到带有 'id' =1 和未定义方法 `title' 的文章,用于 nil :NilClass in Rails app

转载 作者:太空宇宙 更新时间:2023-11-03 16:23:57 24 4
gpt4 key购买 nike

我一直在关注 JumpStartLab Blogger 2 项目,但我坚持做一些看似简单的事情。 I'm at this point只需向上滚动一个页面,上面写着

@article = Article.find(params[:id])

基本上我已经把所有事情都跟进了(我认为),在点击其中一篇文章的链接后刷新浏览器后,我收到以下错误:

ActiveRecord::RecordNotFound in ArticlesController#show

Couldn't find Article with 'id'=1

我的 Articles_controller.rb 看起来像这样

class ArticlesController < ApplicationController

def index
@articles = Article.all
end

def show
@article = Article.find(params[:id])
end

end

我的 index.html.erb 看起来像这样

<h1>All Articles</h1>

<ul id="articles">
<% @articles.each do |article| %>
<li>
<%= link_to article.title, article_path(article), class: 'article_title', id: "article_#{article.id}" %>
</li>
<% end %>

</ul>

<%= link_to "Create a New Article", new_article_path, class: "new_article" %>

我的 show.html.erb 看起来像这样。

<h1><%= @article.title %></h1>
<p><%= @article.body %></p>
<%= link_to "<< Back to Articles List", articles_path %>

非常卡在这里,想不通。我还注意到另一个问题。一开始我忘了

@article = Article.find(params[:id])

我被这个错误困扰着,我想在我弄清楚第一个问题后它会回来。

NoMethodError in Articles#show show.html.erb where line #1 raised:

undefined method `title' for nil:NilClass

我查过类似的问题,但它们似乎都比我更深入地了解程序,并且正在谈论我认为我尚未处理的私有(private)方法。我发布了这两个问题,因为我不确定它们是否相关。任何建议都会帮助我,因为这真的让我慢了下来。谢谢。

最佳答案

根据您显示的代码,如果链接存在于您的索引页面上,那应该不会发生这种情况,那么您的显示方法应该能够找到它。

也许您的索引页已过时,或者使用了一些不再有效的缓存。尝试重新加载页面,或重新启动服务器(如果这样做,请确保运行 spring stop 以便完全重启),我也会运行 rake tmp:clear 清除缓存,以防万一。

关于ruby-on-rails - 找不到带有 'id' =1 和未定义方法 `title' 的文章,用于 nil :NilClass in Rails app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28592284/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com