2014-12-23 2 views
-1

Я не могу отладить эту ошибку. Я следую Рубин на Rails Tutorial находится здесь: http://guides.rubyonrails.org/getting_started.htmlОшибка Ruby on rails: параметр отсутствует или значение пуст

ошибка исходит от моего контроллера, вот код для этого:

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

положить это @article = Article.new article_params – djrock

ответ

0

Это ш ульд быть

@article = Article.new(article_params) 

Как вы уже разрешены атрибуты в article_params метод

+1

Вау, я идиот. Не могу поверить, что я этого не видел. –

+1

Я нашел это полезным, мне пришлось ждать таймера, прежде чем я смогу принять его. –

0

Пожалуйста, обратите внимание, что вы написали

@article = Article.new(params.require(article_params)) 

тогда как он должен быть

@article = Article.new(params.require[article_params]) 

т.е. [ ] вместо() вокруг article_params.

Смежные вопросы