我有一個表格,它必須有一個有效並且存在的case_id,並且除非它存在,否則不應創建該記錄。我不應該能夠傳遞一個NULL case_id。允許外鍵爲NULL?
它看起來像:
# == Schema Information
#
# Table name: medical_intervention_expert_answers
#
# id :integer not null, primary key
# case_id :integer
# problem_id :integer
# medical_intervention_id :integer
# created_at :datetime
# updated_at :datetime
# pti :boolean
#
class MedicalInterventionExpertAnswer < ActiveRecord::Base
belongs_to :case
belongs_to :problem
belongs_to :medical_intervention
def self.create_from_data(case_id, problem_id, medical_intervention_id, is_pti)
answer = self.create(case_id: case_id, problem_id: problem_id, medical_intervention_id: medical_intervention_id,
pti: is_pti)
return answer
end
end
如果我傳遞一個CASE_ID是空或通過在不存在的CASE_ID,「答案」變量應該是零和數據庫應不變。
我該怎麼做纔能有這種關係?
問題是我使用SQLite所以我不能使用add_foreign_key – jmasterx
我碰巧在發送medical_intervention_id之前進行驗證。 – cristiancvanega