Django версия 2.1.15 Python версия 3.7.4
Djn go settings.py
LANGUAGE_CODE = 'ko-kr'
TIME_ZONE = 'Asia/Seoul'
Я не знаком с Engli sh. Я напишу на Engli sh как можно сложнее.
Django порядок моделей по индивидуальному алгоритму Использование разницы между текущим временем и временем создания
моя модель is
models.py
class Review(models.Model):
title = models.CharField(max_length = 100)
content = models.TextField()
movie = models.ForeignKey(Movie,on_delete=models.CASCADE)
user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete = models.CASCADE)
like_users=models.ManyToManyField(settings.AUTH_USER_MODEL,related_name='like_reviews')
created_at=models.DateTimeField(auto_now_add=True)
updated_at=models.DateTimeField(auto_now=True)
Я хочу по убыванию order_by (Count (like_users) / (current_time - created_at + 60)) Просмотреть модель
(current_time-created_at): я хочу изменить разницу между двумя часами на минуты. (целое число)
Я тестировал эти вещи.
from django.db.models import ExpressionWrapper,F,Value
from django.db.models.fields import DurationField,DateTimeField
def test(request):
now = timezone.localtime()
test = Review.objects.annotate(diff_time=(ExpressionWrapper(Value(now, DateTimeField()) - F('created_at'), output_field=DurationField()))).annotate(diff_value=F('diff_time')+60).values()
Но не удалось. Как я могу получить желаемые результаты?
Я использовал переводчика, чтобы задавать вопросы, но надеюсь, что мои намерения ясно переданы. Мне очень жаль мой бедный Энгли sh.