0
對於屬於「引用」的「附件」,我有一個稍微複雜的模型。我有一個模型「訂單」,可以利用這個模型,但附件是分開的。我可以在附件上擁有2個「belong_to's」,只需將ID設置爲1?這樣做只是爲了創建專門用於訂單附件的附件模型而受到懲罰嗎?Rails通過更改設置了哪個模型ID來更改模型「belongs_to」的模型
對於屬於「引用」的「附件」,我有一個稍微複雜的模型。我有一個模型「訂單」,可以利用這個模型,但附件是分開的。我可以在附件上擁有2個「belong_to's」,只需將ID設置爲1?這樣做只是爲了創建專門用於訂單附件的附件模型而受到懲罰嗎?Rails通過更改設置了哪個模型ID來更改模型「belongs_to」的模型
謝謝,那是我在找什麼。儘管出於好奇,如果我有一個belongs_to:order和belongs_to:quote的模型,那麼只是給它一個id,這仍然是一個壞主意?如果是這樣,爲什麼?由於這已經被很好的使用,所以我寧願避免將模型名稱更改爲::new_name。 – Suavocado
如果您使用它,您將有兩個字段作爲外鍵,即id字段和類型字段,因此這將是較慢的查找。你可以通過索引來改進它。由於您現在有一個額外的字符串字段和可選的索引,它將佔用數據庫中的更多空間。我認爲唯一的好處是如果你需要所有的附件放在一張表中,因爲你將把這些附件作爲一個單獨的實體工作,而不管關聯的表是什麼,並且你將擁有很多這樣的表,這樣使用SQL UNION會變得很麻煩。 – dinomix
如果您正在將報價和訂單表中的附件ID存儲爲完全正確,因爲您只是重複使用單個圖像。如果您要在附件表格中存儲訂單ID和報價ID,那麼該多態性將出現在該表格中。 – dinomix