gpt4 book ai didi

ruby-on-rails - NoMethodError 未定义方法 ` ' 为 nil :NilClass

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

我是 Rails 新手,从 http://guides.rubyonrails.org/getting_started.html 开始卡在 5.7 Showing Articles 并出现以下错误:

NoMethodError in Articles#show
Showing /home/jakub/workspace/blog/blog/app/views/articles/show.erb where line #3 raised:

undefined method `title' for nil:NilClass

来源在哪里:

 <p>
<strong>Title:</strong>
<%= @article.title %>
</p>

<p>

articles_controller.rb是:

class ArticlesController < ApplicationController

def index
@articles = Article.all
end

def create
@article = Article.new(article_params)

@article.save
redirect_to @article
end

private
def article_params
params.require(:article).permit(:title, :text)
end

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

end

rake routes命令带来:

        Prefix Verb   URI Pattern                  Controller#Action
welcome_contact GET /welcome/contact(.:format) welcome#contact
welcome_index GET /welcome/index(.:format) welcome#index
articles GET /articles(.:format) articles#index
POST /articles(.:format) articles#create
new_article GET /articles/new(.:format) articles#new
edit_article GET /articles/:id/edit(.:format) articles#edit
article GET /articles/:id(.:format) articles#show
PATCH /articles/:id(.:format) articles#update
PUT /articles/:id(.:format) articles#update
DELETE /articles/:id(.:format) articles#destroy
root GET / welcome#index

知道是什么导致了这个问题吗?我应该在哪里寻找?

最佳答案

您的show 操作是私有(private)的,因此不能在 View 中使用实例变量@post。将其移至公共(public)范围,问题应该得到解决。

关于ruby-on-rails - NoMethodError 未定义方法 ` ' 为 nil :NilClass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26326941/

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