我有一種情況,要求用戶填寫有關建築物的調查問卷。 Building
模型可能hasMany Questionnaire
雖然,至少現在,這是足夠的Building hasOne Questionnaire
。困擾我的是,前者在後者不起作用時不起作用,我無法弄清楚原因。CakePHP空白外鍵
按照慣例:buildings.id
被引用在questionnaires.building_id
的外鍵中。在hasMany
情況下,外鍵只是被忽略試圖插入questionnaires
記錄時:
INSERT INTO `questionnaires` (`deleted`, `modified`, `created`, `id`) VALUES (1, '2011-03-17 10:32:24', '2011-03-17 10:32:24', '4d821b78-7314-4ab4-a532-226f6e891b5e')
的building_id
在所有的沒有提及。但是,只要我將Questionnaire
從hasMany
陣列移動到hasOne
陣列,它就會完美運行。
任何洞察內在的魔法將是偉大的。我無法想象自己是第一個遇到這個問題的人,但我從未想到之前曾遇到過這樣的問題。
謝謝。
UPDATE
所以我想我找到了答案。在我的表格中,由於我真的只定義了一個問卷(儘管我可以支持多個問卷),所以我將輸入定義爲Questionnaire.deleted
,對於hasOne
工作正常,但對hasMany
沒有太大影響。對於後者,我必須爲Questionnaire.0.deleted
創建輸入。我爲無數的hasMany
關係創建了表單,我一次只打算創建一個表單,我發誓我不記得以前必須這樣做。這一直是一個要求嗎?也許我只需要放下一段時間的困難。嘖。