0
這是我的DB模式。 注意 'studentid' 和 'student_studentid'如何在Rails中設置自定義表關聯
create_table "students", force: true do |t|
t.string "fname", limit: 45
t.string "lname", limit: 45
t.string "guardian", limit: 45
t.string "phone", limit: 45
t.string "email", limit: 45
t.integer "user_id"
t.date "createdate"
t.string "studentid", limit: 45
end
create_table "term_reports", force: true do |t|
t.string "student_studentid", limit: 10
t.integer "subject_id"
t.integer "score"
t.integer "position"
t.integer "term"
t.integer "year"
t.integer "user_id"
t.date "ceatedate"
end
我指定自定義的ID給學生。我如何將這些列用於表關聯?我想能夠說TermReport.find('my-id-10')。student。
這是我試過的,但不會工作。
class TermReport < ActiveRecord::Base
belongs_to :student, :primary_key => :studentid
end
class Student < ActiveRecord::Base
has_many :term_reports, primary_key: :stuent_studentid
end
TermReport.find('jm-90')。學生仍然無法正常工作請參閱我的答案中的輸出。 –
你可以參考這個如何爲學生設置自定義主鍵https://stackoverflow.com/questions/32579245/creating-custom-primary-keys-in-rails-application – Maru