我一直在一遍又一遍地调用相同的模型,但有些东西具有不同的领域,但总会有一些总是相同的。我在想有没有办法重构它?
例如。
def x(get_filter, **kwargs):
# if blah
return User.object.get(is_active=True, is_deleted=False, is_staff=False, **kwargs)
# if blah
return User.object.filter(is_active=True, is_deleted=False, is_staff=False, **kwargs)
# if blah
return User.object.get(is_active=True, is_deleted=False, **kwargs)
# if blah
return User.object.get(is_active=True, is_deleted=False, is_staff=False, is_superuser=True, **kwargs)
可以看出,is_active=True 和is_deleted=False 总是被使用。 我想做类似的事情
is_deleted = {'is_deleted': False}
is_active = {'is_active': True}
User.object.filter( is_staff=False, **is_active, **is_deleted,**kwargs)
在我的IDE中,它会说不允许重复**
有人可以给我一个想法吗?
提前致谢
请您参考如下方法:
当然,试试这个
options = {'is_deleted': False,
'is_active': True}
kwargs.update(options)
User.object.filter(is_staff=False, **kwargs)
