[英]Convert string to int before querying django ORM
我有一個 model
class Entry(models.Model):
maca = models.CharField(max_length=100, blank=True, null=True)
該字段將只接受數字(出於業務原因不能將 char 字段設置為 integer 字段)
現在我必須獲取所有瑪卡含量大於 90 的條目
我想做的是:
Entry.objects.filter(maca__gte=90)
但是 get 不起作用,因為 maca 是一個字符串。
如何在過濾前將 maca 轉換為 int? 或者像這樣的東西?
謝謝
嘗試這個:
from django.db.models.functions import Cast
from django.db.models import IntegerField
Entry.objects.annotate(maca_integer=Cast('maca', output_field=IntegerField())).filter(maca_integer__gte=90)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.