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