2013-04-27 98 views
0

我有一個像社區一樣的模型,其中一些用戶可以是管理員,其他用戶是普通用戶。我可以將用戶社區鏈接爲外鍵或其他可能的關係。但是,我怎樣才能實現user_type?我應該在哪裏擁有這個領域?這只是模型社區中的另一個領域嗎?django - 用戶在另一個模型中的用戶類型

+0

請發表您的模型的代碼。 – alecxe 2013-04-27 03:43:17

回答

0

取決於數據的大小和其他屬性,但常見的解決方法是在社區和用戶之間建立一對多的關係。然後你可以在User中有一個表示用戶類型的字段。

在數據庫中,您將有一個通過外鍵鏈接的社區表和用戶表,用戶表將存儲用戶類型信息。

3

我想你想根據他們的user_type爲社區中的用戶提供不同的訪問級別。

在這種情況下,您可以將UserProfile中的FK保留爲Commmunity(如果一個用戶只能是一個社區的一部分)。

如果用戶可以成爲各種社區的一部分,則應在社區模型上保留一個名爲users的ManyToManyField。

之後,只需將這些用戶分組(請參閱Django組和權限)。設置您定義的組的權限。基於用戶在哪個組中,他將擁有該組的權限。使用這些權限來決定給予特定用戶的訪問權限。

+0

+1 ................ – user2139745 2013-04-27 04:16:29