我是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)
控制器名称是复数
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.
| 归档时间: |
|
| 查看次数: |
3019 次 |
| 最近记录: |