我想在人力资源状态变更获得批准后启用编辑
def has_change_permission(self, request, obj=None):
salary = Salary.objects.filter(id=obj).first()
if obj.hr_state == 'request-change-approved' and request.user.user_role.position.code == 'HRM':
return True
else:
return False
你应该用
过滤工资id=obj.id
而不是与整个对象实例进行比较。
顺便说一下,当使用空 obj 调用 url 时,id 仅是 None ,否则它将包含一个对象,所以不用担心 None (我只是读了评论)