例子:django自带的User(包含用户名和密码)
服务商员工: siteuser (一个user可以属于多个服务商,所以会有多个服务商员工身份)
项目成员: userp (一个siteuser可以有多个userp身份;一个服务商员工可以属于多个项目,所以会有多个项目成员身份)
如果在项目中的某一个操作需要验证该员工账号的密码,写法如下
在 userp model中写一个成员函数:
def checkpassword(self, password):
self.siteuser.checkpassword(password)
---------------此函数不需要写任何逻辑语句,只需要在调用userp的上级siteuser的checkpassword函数即可
在siteuser model中写一个成员函数:
def checkpassword(self,password):
self.User.checkpassword(self.User, password)
---------------他已经为最底层账号,所以直接写逻辑语句就行(因为user为django自带的,所以更改不了)
django中有验证密码的函数就是checkpassword(用户名,密码)
账号级别:
userp
|
| 引用siteuser的账号
|
siteuser
|
| 引用user的账号
|
User