0

大学の登録システムを作成しています。

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から図を追加しました: ここに画像の説明を入力

4

1 に答える 1

0

レジスターには多くの学生がいるとあなたは言いますが、なぜレジスターテーブルに列を使用belongs_to :studentして追加したのですか?student_id

于 2013-03-05T20:04:39.120 に答える