質問編集履歴

1 タグの修正

qazwsx_15

qazwsx_15 score 8

2018/05/13 17:02  投稿

acts-as-taggable-onでundefined methodが発生する。
[http://tomokiit.hatenablog.jp/entry/acts-as-taggable-on](http://tomokiit.hatenablog.jp/entry/acts-as-taggable-on)
上記のサイトの通りacts-as-taggable-onを用いたタグ付けを行おうとしているのですがcontrollerでundefined method `[]=' for nil:NilClassが発生してしまいます。
使い方を試してみたかったので参考サイトと変更点はなく、なぜエラーが発生するのかが分かりません。どこを変更するとよいのでしょうか。
環境
Rails 5.2.0
Ruby 2.4.4p296 (2018-03-28 revision 63013) [x64-mingw32]
contents_controller.rbの一部
```ruby
def content_params
params.require(:content).permit(:name,:skill_list)
end
```
_form.html.erbの一部
```ruby
<div class='field'>
<%= form.label :skill_list, 'タグをカンマ区切りで入力' %><br/>
<%= text_field_tag 'content[skill_list]', content.skill_list.join(',') %>
</div>
```
エラーログ
> NoMethodError in ContentsController#create
> undefined method `[]=' for nil:NilClass
> Extracted source (around line #27):
> 25 # POST /contents.json
> 26 def create
> 27 @content = Content.new(content_params)
> 28 respond_to do |format|
>
> app/controllers/contents_controller.rb:27:in `create'
>
>
> Request
> Parameters:
>
> {"utf8"=>"✓", "authenticity_token"=>"token", "content"=>{"name"=>"a", "skill_list"=>"a"}, "commit"=>"Create Content"}
[acts-as-taggable-onを使ってユーザー管理にタグ機能を実装してみる](http://ruby-rails.hatenadiary.com/entry/20150225/1424858414#acts-as-taggable-on-user_manage)
などのほかのサイトを参考にしても同じエラーが発生しました。
create,updateで同様のエラーが発生します。
  • Ruby

    12168 questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る