イベント投稿のオリジナルアプリを作っているのですが、タグ機能の実装がうまくいきません。
エラー文
ActionController::ParameterMissing in EventsController#create param is missing or the value is empty: tag Extracted source (around line #133): def tag_params params.require(:tag).permit(:tagnames) end
対象コード
イベントコントローラー
def index @tag_list = Tag.all @events = Event.all @event = current_user.events.new end def new @event = Event.new end def create # binding.pry @event = Event.new(event_params) binding.pry if @event.save #binding.pry tag_list = tag_params[:tagnames].delete(" ").split(",") @event.save_tags(tag_list) redirect_to @event else render 'new' end end private def event_params params.require(:event).permit(:name, :explanation, :facility_id, :scale_id, :category_id, :volunteer, images: []).merge(user_id: current_user.id) end def tag_params params.require(:tag).permit(:tagnames) end ```イベントモデル ```ここに言語を入力 class Event < ApplicationRecord extend ActiveHash::Associations::ActiveRecordExtensions belongs_to :user has_many_attached :images belongs_to :facility belongs_to :scale belongs_to :category has_many :event_tag_relations, dependent: :destroy has_many :tags, through: :event_tag_relations, dependent: :destroy has_many :comments, dependent: :destroy with_options presence: true do validates :name validates :explanation validates :facility_id validates :scale_id validates :category_id end with_options numericality: { other_than: 1 } do validates :facility_id validates :scale_id validates :category_id end def save_tags(tag_list) tag_list.each do |tag| unless find_tag = Tag.find_by(tagname: tag.downcase) begin self.tags.create!(tagname: tag) rescue nil end else ArticleTagRelation.create!(event_id: self.id, tag_id: find_tag.id) end end end ```タグモデル ```ここに言語を入力 class Tag < ApplicationRecord has_many :event_tag_relations, dependent: :destroy has_many :events, through: :event_tag_relations, dependent: :destroy validates :tagname, uniqueness: true end ```### 行った事 createメソッドでparamsを確認するとeventparamsの中にtagの値が入っていた為tagモデルに値が入っていなかった為エラーがおきました。しかしtagの値をtagparamsに入れるにはどうすればよろしいでしょうか? **createメソッドのparams** <ActionController::Parameters {"authenticity_token"=>"iWEQUJPBem+bnIql0kdj4luhen0c3G2UjJlsg0JhONIqVuTemcGwcDmoAVyX76T2WweqvR2e7eD69Z1obpF49w==", "event"=><ActionController::Parameters {"name"=>"夏祭り", "explanation"=>"a", "volunteer"=>"a", "tagnames"=>"tagu", "facility_id"=>"2", "scale_id"=>"2", "category_id"=>"2"} permitted: false>, "commit"=>"保存する", "controller"=>"events", "action"=>"create"} permitted: false>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。