2011-03-24 18 views
1

我正在使用文件上傳表(字段:id, name, size, type)並使用一系列其他表格(註釋,文件),每個表格都帶有一個指向文件上傳表中的一條記錄的外鍵(字段:upload_id)。該系列表格中的每一個(例如註釋,文件)的模型都將包括指向文件上傳表的歸屬關係。每個`belongsTo`文件上載和每個文件上載在模型中都沒有關係?

這意味着文件上傳表沒有外鍵(多個表指向它),因此除非每個其他表都有一個字段(例如,note_id,filing_id等),否則外部id字段將不起作用。 。該模型不會提及任何關係。

我應該這樣做嗎?我想不出更有效率的。

回答

2

基本上取決於業務邏輯。

如果你的文件被其他表(注餡等),那麼

上傳的hasMany注 上傳的hasMany之間分佈灌裝

但這是情況下,當你有每個記錄只有一個文件。

如果有情況下的註釋,或填充有多個文件,然後你需要去HABTM relaion或:

Table notes: 
id, name, desc ... 

Table uploads: 
id, name, size, type 

Table notes_uploads: 
id, note_id, upload_id 

Table fillings_uploads: 
id, filling_id, upload_id 

所以,你將定義一個多對多關係到具有文件每個實體在裏面。

我認爲第二種方式更靈活一些,但真正取決於需求。

相關問題