Python 在django中通过附加到模型的时区选择模型

Python 在django中通过附加到模型的时区选择模型,python,sql,django,orm,django-orm,Python,Sql,Django,Orm,Django Orm,假设我有两个这样的模型: Time(models.Model): time = models.TimeField() Model(models.Model): time = models.ForeignKey(Time) timezone = models.CharField() 现在,我想根据UTC时间筛选这些模型。原始SQL将如下所示: SELECT * FROM model LEFT JOIN time ON model.time_id = time.

假设我有两个这样的模型:

Time(models.Model):
    time = models.TimeField()


Model(models.Model):
    time = models.ForeignKey(Time)
    timezone = models.CharField()
现在,我想根据UTC时间筛选这些模型。原始SQL将如下所示:

SELECT * FROM model
    LEFT JOIN time ON model.time_id = time.id
WHERE time = '01:00:00' AT TIME ZONE model.timezone

然而,还有大量复杂的其他过滤器,可以根据这些过滤器进行过滤,这些过滤器依赖于使用django ORM而不是完整的原始SQL查询。是否有一些方便的方法可以将原始SQL用于部分查询?

您是否尝试过此查询:Models.objects.filter(time\uu time=datetime.time(1,0,0),timezone='UTC')时间不是存储在UTC中,而是存储在Model.timezone中。因此,我需要一种在数据库级别将时间转换为Model.timezone的方法。这在SQLAlchemy中非常容易,所以我认为django的orm必须为它提供一些明显的支持,而我只是没有看到。