私はsimple_form_for
を使ってモデルの代わりにシンボルをフォームに渡しているので、カスタムパラメータをコントローラに送り返すことができます。 デフォルトでは、すべてのチェックボックスをデフォルトに設定しました。collection_check_boxesですべてをチェック/チェックを外す
私が知ることができないのは、すべて選択/非選択のチェックボックスを追加する方法です。私はそこにいくつかのJSが必要だと思っていますが、値を変更しなければならない属性はわかりません。
要素をチェック/チェック解除するときに属性が変更されたかどうかを確認しましたが、input
要素の属性は変更されません。しかし、項目をチェックしたり、チェックを外したりすると、<form>
要素が輝きます。それが私が来る手がかりにどれほど近いかです。
= simple_form_for :mass_unassignment, url: admin_merchant_holiday_path(@merchant), method: :post do |f|
- if @jobs.present?
%h3 Cleaning
%table
%thead
%tr
%td= check_box_tag :mass_select
%td Id
%td Date
%td Customer
%tbody
= f.collection_check_boxes :jobs, @jobs, :id, :start_at, checked: @jobs.map(&:id) do |el|
- job = el.object
%tr
%td= el.check_box checked_value: 1
%td= link_to el.object.id, admin_job_path(job)
%td= job.start_at.strftime('%e %b %y – %I:%M%P')
%td= link_to job.customer.full_name, admin_customers_path(job.customer)
はこの記事を参照してください。 https://stackoverflow.com/questions/386281/how-to-implement-select-all-check-box-in-html – jdgray