1
當用戶登錄時,我檢查它是否屬於一個特定的羣體,如果這是真的,我做一個重定向到指定的頁面,這裏是我的代碼apps.py:Django的信號重定向
def OperatorRedirect(sender, user, request, **kwargs):
from struttura_employee.models import EmployeeUser, EmployeeGroup
u = get_object_or_404(EmployeeUser,username=user.username)
groups = u.get_groups()
g = get_object_or_404(EmployeeGroup,long_name="Operatore")
if g in groups:
print("sei un operatore")
return HttpResponseRedirect(reverse('qrs_machine_panel:asset_choice', args=[]))
class QrsofmanMachinePanelConfig(AppConfig):
name = 'qrsofman_machine_panel'
print("ciao")
user_logged_in.connect(OperatorRedirect)
問題是HttpResponseRedirect被忽略 有什麼想法?
除了Daniel提到的內容外,你還應該使用['user_passes_test'](https://docs.djangoproject.com/en/1.9/topics/auth/default/#limiting-access-to-logged-在你的登錄視圖中使用裝飾者(in-users-that-pass-a-test)裝飾者;否則用戶可以簡單地輸入受限制視圖的URL。 –
謝謝你的回覆! – Skar3