2013-04-22 94 views
0

我正在構建一個應用程序,其中包含公共訪問,客戶受限區域和管理員的另一個受限區域。Django客戶端和Extranet用戶區別

我有一個Manager模型和Client模型與用戶的外鍵。管理器自動添加到組managers和客戶端到clients

我有一個客戶端的extranet,現在被@login_required限制了。對於經理來說,這與外聯網一樣。

我需要禁用訪問管理員外聯網的客戶端。

是否更好地創建管理員組中的權限並將其添加到Extranet部分中的每個視圖或以某種方式不同?

回答

0

一種方法是使用user_passes_test裝飾:

要限制對經理人的觀點之前添加此行。

@user_passes_test(lambda u: u.groups.filter(name='managers').count() > 0, login_url='/myapp/denied/') 
相關問題