我在 PyCharm 中使用 ipython (Python 3.7) 控制台。我正在尝试运行 Django ORM 查询
Article.objects.filter((round(datetime.now(timezone.utc) - F("created_on")) / 300) * 300)
但我收到以下错误
Traceback (most recent call last):
File "/Users/davea/Documents/workspace/mainpage_project/venv/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3267, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-12-53618885441a>", line 1, in <module>
Article.objects.filter((round(datetime.now(timezone.utc) - F("created_on")) / 300) * 300)
NameError: name 'F' is not defined
我认为“F”是在表达式中引用我的模型中的字段的方式,但我得到了上面的错误。我的文章模型包含如下字段......
class Article(models.Model):
...
created_on = models.DateTimeField(default=datetime.now)
请您参考如下方法:
在 Python 控制台中你需要导入 F
from django.db.models import F
