问题描述
抱歉,我的帖子太乱了。我一直试图使该集合提交工作,但是每次我按下创建报告按钮时,我都会回到屏幕上并在Rails服务器终端中显示Unpermitted参数::hero_id。
型号
class Report < ApplicationRecord
validates :subject,presence: true,length: { minimum: 6,maximum: 100 }
validates :description,length: { minimum: 10,maximum: 300 }
belongs_to :requester
has_and_belongs_to_many :heros
end
视图/表格
<div class="container">
<div class="row justify-content-center">
<div class="col-10">
<% if @report.errors.any? %>
<h2>The following errors prevented the article from being saved</h2>
<ul>
<% @report.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
<% end %>
<%= form_with(model: @report,class: "shadow p-3 mb-3 bg-dark rounded",local: true) do |f| %>
<div class="form-group row">
<%= f.label :subject,class: "col-2 col-form-label text-light" %>
<div class="col-10">
<%= f.text_field :subject,class: "form-control shadow rounded",placeholder: "Subject of Report" %>
</div>
</div>
<div class="form-group row">
<%= f.label :description,class: "col-2 col-form-label text-light" %>
<div class="col-10">
<%= f.text_area :description,rows: 10,placeholder: "Description of Issue" %>
</div>
</div>
<div class="form-group row">
<%= f.label :hero,class: "col-2 col-form-label text-light" %>
<div class="col-10">
<%= f.collection_select(:hero_ids,Hero.all,:id,:hero_name,{prompt: "Select a Hero"},{:required => true}) %>
</div>
</div>
<div class="btn-toolbar p-2 mb-2 row justify-content-center">
<%= f.submit class: "btn btn-primary" %>
</div>
<% end %>
</div>
<div class="mb-3">
<%= link_to '[ Cancel and return to reports listing ]',reports_path,class: "text-info" %>
</div>
</div>
</div>
控制器
def report_params
#byebug
params.require(:report).permit(:subject,:description,hero_ids: [])
end
控制台
(byebug) params.require(:report)
<ActionController::Parameters {"subject"=>"Test report","description"=>"Test report","hero_ids"=>"1"} permitted: false>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)