我想在models.pyrequest.user
的方法中获取当前登录的用户() 。save
我想检查用户的角色,看看它是否可以根据他的角色执行一些操作。
模型.py:
class TimeSheet(models.Model):
check_in_time = models.TimeField()
check_out_time = models.TimeField()
class Tasks(models.Model):
time_sheet = models.ForeignKey(TimeSheet)
project = models.ForeignKey(Project)
start_time = models.TimeField()
end_time = models.TimeField()
def save(self, *args,**kwargs):
project = SpentTime.objects.get(project__project__id = self.project.id)
start = datetime.datetime.strptime(str(self.start_time), '%H:%M:%S')
end = datetime.datetime.strptime(str(self.end_time), '%H:%M:%S')
time = float("{0:.2f}".format((end - start).seconds/3600.0))
if common.isDesigner(request.user):
SpentTime.objects.filter(project__project__id = self.project.id).update(design = float(project.design) + time)
if common.isDeveloper(request.user):
SpentTime.objects.filter(project__project__id = self.project.id).update(develop = float(project.develop) + time)
super(Tasks, self).save(*args, **kwargs)
在这里,Tasks
模型被用作模型中的内联Timesheet
。我想检查当前登录用户的角色并根据用户的角色更新另一个模型。这里我需要request.user
检查当前用户的角色。我没有使用任何表单或模板,而是完全使用 Django admin。是否有任何方法可以进入request.user
该save
方法或检查和更新 admin.py 中另一个模型中的值?