我似乎无法调试此错误。我正在关注位于此处的Ruby on rails教程:http://guides.rubyonrails.org/getting_started.html
错误来自我的控制器,这里是代码:
class ArticlesController < ApplicationController
def index
@articles = Article.all
end
def show
@article = Article.find(params[:id])
end
def new
end
def create
@article = Article.new(params.require(article_params))
@article.save
redirect_to @article
end
private
def article_params
params.require(:article).permit(:title, :text)
end
end
错误来自这一行:
@article = Article.new(params.require(article_params))
以下是我的观点,以防您需要:
<h1>New Article </h1>
<%= form_for :article, url: articles_path do |f| %>
<p>
<%= f.label :title %><br>
<%= f.text_field :title %>
</p>
<p>
<%= f.label :text %><br>
<%= f.text_field :text %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
答案 0 :(得分:0)
应该是
@article = Article.new(article_params)
因为您已经允许article_params
方法
答案 1 :(得分:0)
请注意您已写过
@article = Article.new(params.require(article_params))
然而它应该是
@article = Article.new(params.require[article_params])
即。 []而不是围绕article_params的。(