路由错误未初始化的常量ArticleController

Ven*_*adi 1 ruby-on-rails

我是Ruby on rails的新手.我在app/controllers/articles_controler.rb中编写了代码

def create
  @article = Article.new(article_params)

  @article.save
  redirect_to @article
end

private
  def article_params
    params.require(:article).permit(:title, :text)
  end
Run Code Online (Sandbox Code Playgroud)

当我打开rails服务器时,我得到错误,因为路由错误未初始化的常量ArticleController.

在config/routes.rb中,我有以下代码

Rails.application.routes.draw do

  get 'articles/new'

  resources :article 

  root 'welcome#index'
 end 
Run Code Online (Sandbox Code Playgroud)

Wal*_*Ali 5

控制器名称是复数

class ArticlesController < ApplicationController #notice, it is Articles
Run Code Online (Sandbox Code Playgroud)

这意味着,在您的工作中config/routs.rb,您需要有一个映射到articles(复数)的路径.

这肯定意味着,在你config/routes.rb,你有一个resources :article.所以路由被映射到一个名为的控制器Article,你没有它,而且无论如何都是不正确的.这就是你得到的Routing Error uninitialized constant ArticleController原因,因为它找不到一个名为Article(奇异)的控制器

它应该是resources :articles.这样,它将寻找控制器名称Articles

底线:控制器名称是复数.所以检查你的namings.