sách gpt4 ai đã đi

python - 带有链接货币字段的 Django order_by 价格字段

In lại 作者:行者123 更新时间:2023-12-04 09:16:30 25 4
mua khóa gpt4 Nike

我有房地产模型。有两个字段giá 货币 .人们只能以两种货币输入房地产价格。但是,由于价格字段只是数字并且价格与货币相关,因此我无法订购不同货币的价格。只能使用相同的货币订购。
只有两种货币选项可用:

UZS = 'UZS'
USD = 'USD'

CURRENCY_TYPES = (
(UZS, 'sum'),
(USD, 'y.e.')
)

class Property(BaseModel):
price = models.PositiveIntegerField()
currency = models.CharField(max_length=255, choices=CURRENCY_TYPES)
我试图将价格更改为相同的货币,但后来我不知道如何订购它们。
Property.objects.filter(currency='UZS').annotate(divided_price=F('price') / 10000).values('divided_price')
所以率是
1 美元 = 10 000 UZS
10 000 UZS = 1 美元
如何订购不同货币的价格?

1 Câu trả lời

用于将价格转换为通用货币值的用例表达式。例如

from django.db.models import Case, When

#...
conversion_rate = 1 / 10_000 # This value can be from an exchange board

qs = Property.objects.annotate(
price_usd=Case(
When(currency=UZS, then=F('price') * conversion_rate ),
# Assumes that the only other currency is USD
default=F('price')
)
).order_by('price_usd')

关于python - 带有链接货币字段的 Django order_by 价格字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63189696/

25 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com