我有一个自定义的用户设置是这样的:确定类型的登录用户
class CustomUser(AbstractUser):
pass
class Employee(CustomUser):
user = models.OneToOneField(settings.AUTH_USER_MODEL)
# other fields
在settings.py,我然后添加以下重点:
AUTH_USER_MODEL = 'myapp.CustomUser'
我要确定谁登录将其重定向到适当的观点或网址。
在我的帐户激活视图,记录他们在我将它们重定向到相应页面这样
if hasattr(user, 'employee'):
return redirect('edit_employee', slug=user.employee.slug)
else:
return redirect('index')
但这并不觉得从那之后,我需要在其他地方一样显示使用该模板中的另一个配置文件页面链接。
如何在视图和模板中更好地识别普通用户和员工?
我承认我花了一些时间来了解您的方法。我愿意为此付出代价,但请您指出我采用这种方法的完整解决方案? – Animesh
@Animesh我提供的代码是使用通用FK的替代品,功能齐全。如果您想要添加新的配置文件模型,您应该1.创建一个新的模型,如上面的'EmployeeProfile',2.在USER_TYPES中添加新的用户类型3.在由'profile_model'方法返回的字典中添加一个项目以返回您的新个人资料模型。 –
感谢您的指导,我会研究这一点。 – Animesh