私は simple_form を使用しています。カテゴリテーブルを使用して、カテゴリと記事の間の関連付けを作成したいだけです。
しかし、私はこのエラーがあります:保護された属性を一括割り当てできません:category_ids。app/controllers/articles_controller.rb:36:in `アップデート'
article_controller.rb
def update
@article = Article.find(params[:id])
if @article.update_attributes(params[:article]) ---line with the problem
flash[:success] = "Статья обновлена"
redirect_to @article
else
render :edit
end
end
記事.rb
has_many :categorizations
has_many :categories, through: :categorizations
カテゴリ.rb
has_many :categorizations
has_many :articles, through: :categorizations
categorization.rb
belongs_to :article
belongs_to :category
カテゴリ化には、article_id フィールドと category_id フィールドがあります。
私の _form.html.erb
<%= simple_form_for @article, html: { class: "form-horizontal", multipart: true } do |f| %>
<%= f.error_notification %>
<%= f.input :title %>
<%= f.association :categories %>
<%= f.input :teaser %>
<%= f.input :body %>
<%= f.input :published %>
<% if @article.published? %>
<%= f.button :submit, value: "Внести изменения" %>
<% else %>
<%= f.button :submit, value: "Опубликовать" %>
<% end %>
<% end %>