在我问prior question时,管理员的方法如下:
def activate(key):
try:
profile = self.get(key=key)
except self.model.DoesNotExist:
return None
if not profile.key_expired():
# -> Activate user
return user
return None
建议在manager方法中使用self.get_query_set().get(key=key)
代替self.get(key=key)
。我想知道这是什么原因,因为前者似乎更加冗长?
答案 0 :(得分:2)
我猜作者只是喜欢啰嗦。没有区别。 Manager类的get方法定义为:
def get(self, *args, **kwargs):
return self.get_query_set().get(*args, **kwargs)
您可以在django / db / models / manager.py
中亲自查看