簡體   English   中英

查詢前將string轉int django ORM

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM