以下のパラメータをlink_toで渡そうとしていますが、paramsを使用してコントローラでこれを読み取る方法を理解できません。コントローラでlink_toパラメータを読み取る方法
<%= link_to "Remove", user_path(:task => {:id => task.id}), :method => :delete, :data => {:confirm => "You Sure?"} %>
コンソールからパラメータ(私はXXXと真正トークンを置き換える)
Parameters: {"authenticity_token"=>"XXX", "task"=>{"id"=>"1"}, "id"=>"1"}
"task"=>{"id"=>"1"}
- これはあなたがハッシュ内のハッシュを持って、私はuser_controller
を取得するのparams![:タスク] [:ID] .nilパラメータが渡されなかった場合、「?」は私にエラーを投げています。しかし、それが無ければ別のアクションを実行する必要があります。どうすればコントローラーで確認できますか? – Trishj
はい、このエラーは 'params [:task]'がないときにスローされます。だから、それが存在するかどうかだけをチェックすることができます。 params [:task] && params [:task] [:id] .present? 'のように記述します。 – dp7