大学の登録システムを作成しています。
2 つのモデルがあります。1 つはRegisterで、もう 1 つはStudentです。ARegisterには多くのStudentsがあり、それぞれの.rbファイルに次のように記述しました。
class Student < ActiveRecord::Base
belongs_to :register
attr_accessible :first_name, :last_name, :university_id
class Register < ActiveRecord::Base
belongs_to :student
belongs_to :module_class
belongs_to :event
has_many :students
attr_accessible :date, :present, :time_of_arrival, :student_id, :module_class_id, :event_id
schema.rbファイルから、テーブルは次のようになります。
create_table "registers", :force => true do |t|
t.integer "student_id"
t.boolean "present"
t.integer "module_class_id"
t.integer "event_id"
t.time "time_of_arrival"
t.date "date"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "registers", ["event_id"], :name => "index_registers_on_event_id"
add_index "registers", ["module_class_id"], :name => "index_registers_on_module_class_id"
add_index "registers", ["student_id"], :name => "index_registers_on_student_id"
私の質問は、レジスタ内の学生のリストを表示して、出席または欠席をマークできるようにしたいということです(register/1たとえば)。現在の様子はこんな感じです。

ただし、現時点では、1 つの学生しかレジスタに割り当てることができず、Presentチェックボックスが表示されます (これはregister/newページ内にあります)
。
インデックス自体は次のregisterようになります。

simple_formより多くの手がかりが得られる場合に備えて、フォームにgemを使用しています。
編集:依存関係を示すためにRubyMineから図を追加しました:
