2014-11-03 47 views
2

請建議我最好的方法。我正在開發一個Django應用程序,你將有3種類型的用戶:管理員,經銷商和用戶。他們必須有層次結構。管理員可以看到一切。經銷商可以看到用戶所做的一切。用戶只能看到他做了什麼。Django中的層次權限

如何使用層次結構來設置這些權限?

+0

看看https://docs.djangoproject.com/en/dev/topics/auth/default/ – grigno 2014-11-03 16:02:42

+1

@HasanRamezani爲什麼使用外部包時,你可以很容易地處理它與本地Django?並且有14周的回購,以及4年以來的最新更新,壞主意...... – 2014-11-03 16:09:19

+0

@DavidW。外部軟件包爲你做了很多繁重的工作。我會同意django-hierarchical-auth似乎不夠成熟或不夠穩定。 – 2014-11-03 16:19:44

回答

1

你可以用2型動物方式處理:

  • 第一溶液(好像是你的情況越好):使用Django permissions

在這裏你會創建組,權限和用戶。一個好的做法是將權限鏈接到組,然後將用戶鏈接到組。這樣,將來很容易改變某些事物。

  • 第二種解決方案:創建3個從用戶基類繼承的不同配置文件。處理思想會變得更加複雜。
0

我正在做類似的事情。每行授權在Django中有點痛苦。有兩個項目可以實現您所要求的全部項目:django-permissiondjango-guardian。我需要更細緻的權限,並且必須自己推出。