私はActiveadminを使用していて、ユーザーがnotebook
にnote
を追加するフォームを選択しています。以前の選択に基づくレールコレクション
ただし、ユーザーがノートブックとして選択した内容に基づいてそのコレクションを動的に変更したいと考えています。ノートのnotebook_type
がevernote
の場合、私はユーザにNote.all
に含まれるノートのいくつかを選択させたくありません。 (私は非常に親切なStackOverflowユーザーの助けを借りてその範囲を取得しました)。参考のため、ここでその方法は
です:
class Notebook < ActiveRecord::Base
has_many :notes
def self.notes_without_check_lists
all.reject { |notebook| notebook.notes.any? { |note| note.note_type == 'check_list' } }
end
end
私はすでに、フォームの別のセクションを処理するために、いくつかのjQueryを使用して、このような変更イベントに使用しています:
$("#note_notebook_id").on 'change', (e) ->
しかし、本質的にどういうわけかcollection:
をNote.all
とNote.notes_without_check_lists
の間で切り替えることは、ユーザーがどのノートブックを選択したかによって異なります。
ご協力いただきありがとうございます。