mysql - Django:根据另一个字段/列获取具有字段/列的对象?

标签 mysql django

是否有可能获得一个对象,该对象的某个字段与同一对象的另一个字段相关?

例如我想做的:

class Transfer(models.Model):
    creation_time=models.IntegerField(default=0)
    ttl=models.IntegerField(default=600)

alive_transfers = Transfer.objects.filter(creation_time__gt=time.time()-ttl)

最佳答案

对于简单的日期时间表达式,您可以使用 F 过滤器: https://docs.djangoproject.com/en/dev/topics/db/queries/#filters-can-reference-fields-on-the-model

来自文档:

>>> from datetime import timedelta
>>> Entry.objects.filter(mod_date__gt=F('pub_date') + timedelta(days=3))

如果您的过滤器涉及复杂的表达式,我建议使用 extra 子句:https://docs.djangoproject.com/en/dev/ref/models/querysets/#django.db.models.query.QuerySet.extra

当然,如果您对您的数据库后端有把握,那么这很有效。

关于mysql - Django:根据另一个字段/列获取具有字段/列的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25657055/

相关文章:

python - django 序列 :item 4 expected string or unicode int found

javascript - Django:我怎样才能获取pdf文件的各个部分并跳转到它们?

django - 如何一起使用django-urls-sugar和ssl中间件?

python - “QCombination”对象不可迭代

php - 从我的网站 1 访问我的其他数据库到我的网站 2

mysql - 了解数据库模式

java - 设置toggleButton不可点击

php - 使用 where in 条件从表中获取最新的 N 条记录

MySQL 查询运行失败 - MySQL 错误 : #1064

具有相同名称的 Django 模板标签