4

この質問は、実際には 2 つの質問です。

  1. すべて選択ボタン- Active_adminformtastic を使用してフォームをレンダリングするので、formtastic のコンテキストで質問します。ページ上のすべてのチェックボックスを選択するボタンを作成するにはどうすればよいですか? JavaScript を使用して実行できますが、formtastic でこれを行う方法がわかりません。
  2. select value に基づいてコレクションを設定します。「コース」のリストから選択できるドロップダウンメニューがあります。学生はコースに登録されているので、コースに登録している学生のチェックボックスリストを表示できるようにしたいです。つまり、ユーザーが別のコースを選択すると、学生のリストが変わります。

    course.rb

    has_and_belongs_to_many :生徒

    学生.rb

    has_and_belongs_to_many :コース

4

2 に答える 2

10

Formtastic には、「すべて選択」チェックボックスの簡単な解決策がありません。JQUERY を使用している場合は、これを行うことができます

あなたの student.rb モデルに追加します

attr_accessor :select_all_courses

f.inputs "Courses" do
  f.input :select_all_courses, :as => :boolean, :label => 'SELECT ALL', :input_html => {:onclick => "jQuery.each( $('.student_courses_checkboxes'), function() { this.checked = $('.all_selector')[0].checked });", :class => "all_selector"}  
  f.input :courses, :as => :check_boxes, :collection => @courses, :input_html => {:class => 'student_courses_checkboxes'}      
end

formtastic を使用してアクティブな管理でできる最善のことは次のとおりです。

コースフォームで

f.input :students, :as => :check_boxes, :collection => @students   
于 2012-01-20T16:08:56.517 に答える