Ruby on Rails 5.10 指南(博客)错误

Ruby on Rails guide (blog) error in 5.10

我正在 Rails 上学习 Ruby 并开始通过 http://guides.rubyonrails.org/getting_started.html#showing-articles 制作这个小博客应用程序。 现在我在 5.10,我需要向表单添加验证,所以如果用户添加长度小于 5 的标题。

所以这是我的 articles_controller.rb:

    class ArticlesController < ApplicationController
    def index
        @articles = Article.all
    end

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

    def new
    end

    def create
        #render plain: params[:article].inspect

        #@article = Article.new(params[:article])

        @article = Article.new(article_params)

        #@article.save
        if @article.save
            redirect_to @article
        else
            render 'new'
        end

        redirect_to @article
    end

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

在这个视图中我有一个错误 (new.html.erb):

    <%= form_for :article, url: articles_path do |f| %>

  <% if @article.errors.any? %>
  <% end %>

  <p>
    <%= f.label :title %><br>
    <%= f.text_field :title %>
  </p>

  <p>
    <%= f.label :text %><br>
    <%= f.text_area :text %>
  </p>

  <p>
    <%= f.submit %>
  </p>

<% end %>

<%= link_to 'Back', articles_path %>

这是我得到的错误:

我是 Ruby 和 rails 的新手,希望能得到一些帮助。

您没有初始化 @article 实例变量,但您尝试在 new 视图中使用它。你应该有:

def new
  @article = Article.new
end