プログラミング初心者です。Railsアプリを作成中です。
エラー内容
xxx/app/views/trees/show.html.slim
h1 スレッドの新規登録 .nav.justify-content-end = link_to "一覧", trees_path, class: "nav-link" = form_with model: @tree, local: true do |f| .form-group = f.label :title = f.text_field :title, class: "form-control", id: "tree_title" .form-group = f.label :category, "カテゴリ" = f.collection_check_boxes :group, :category_ids, Category.all, :id, :name do |category| = category.label do = category.check_box = category.text end end = f.submit "登録する", class: "btn btn-primary"
をブラウザで表示使用とすると、
undefined method `merge' for :name:Symbol
のエラーが出て解決できないです。
やりたいこと
下記の記事のように、
https://qiita.com/YUD96/items/f751010f8a58efaef6ed
https://qiita.com/cawaz3/items/e755a58177212f2aca6c
カテゴリのチェックボックスを付けたいです。
その他のコード
xxx/app/models/tree.rb
class Tree < ApplicationRecord validates :title, presence:true belongs_to :user has_many :responses has_many :tree_categories, dependent: :destroy has_many :categories, through: :tree_category, dependent: :destroy end
xxx/app/models/tree_category.rb
class TreeCategory < ApplicationRecord belongs_to :tree belongs_to :category end
xxx/app/models/category.rb
class Category < ApplicationRecord has_many :tree_categories, dependent: :destroy has_many :trees, through: :tree_categories, dependent: :destroy end
app/controllers/trees_controller.rb
class TreesController < ApplicationController ... def show @tree = Tree.find(params[:id]) @response = Response.new(:tree_id => params[:id]) @responses = @tree.responses.all end ... private def tree_params params.require(:tree).permit(:title) end end
推測される原因
collection_check_boxesの文法(collection_check_boxes(object, method, collection, value_method, text_method, options = {}, html_options = {}, &block))の引数text_methodに:nameを指定したつもりですが、railsが理解していないのではないかと思います。
解決方法調べましたが、分かりませんでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/22 05:25