【发布时间】:2016-02-12 18:16:11
【问题描述】:
基本上,我有 2 个模型,模型 1 是过去 5 年每天的汇率列表。模型 2 是发票模型。
我希望在保存发票模型时,将发票日期与汇率表中的特定日期相匹配,并将适当的汇率导入发票模型上的特定字段。
我一直在尝试在保存覆盖中使用类似的东西:
invdate = obj.invoiceDate
obj.exchange_relation=xchangeRates.objects.filter(date=invdate).values('id')
obj.euroRate= exchangeRates.objects.filter(date=invdate).values('EuroRate')
提前非常感谢! (对不起,没有更多的代码,我想我已经把自己与这个混淆了,并且已经删除了很多我尝试过的东西!
根据要求的模型:
class exchangeRates(models.Model):
date = models.DateField(verbose_name='Exchange Rate Date')
EuroRate = models.DecimalField(verbose_name="Euro Rate", max_digits=5, decimal_places=4)
DollarRate = models.DecimalField(verbose_name="Dollar Rate", max_digits=5, decimal_places=4)
class Invoice(models.Model):
fullname = models.CharField(null=True, blank=True, max_length=250, verbose_name='Invoice Name')
ctr = models.ForeignKey(CTR, related_name='CTR', verbose_name='CTR')
invoiceNo = models.CharField(max_length=6)
invoiceDate = models.DateField(null=True, verbose_name='Invoice Date')
invoiceStatus = models.ForeignKey(InvStatus, verbose_name='Status')
currency = models.CharField(null=False, max_length=3, verbose_name='Currency')
exchangeRate = models.FloatField(verbose_name='exchange rate', default=0.0)
cathieValue = models.FloatField(verbose_name='Cathie Value', default=0.0)
subcontractorValue = models.FloatField(verbose_name='Subcontractor Value', default=0.0)
expensesValue = models.FloatField(verbose_name='Expenses', default=0.0)
deductionValue = models.FloatField(verbose_name='Deduction', default=0.0)
vatInc = models.BooleanField(verbose_name='VAT Included')
netValue = models.FloatField(verbose_name='Net', default=0.0)
vatValue = models.FloatField(verbose_name='VAT', default=0.0)
GrossValue = models.FloatField(verbose_name='Gross', default=0.0)
euroRate = models.DecimalField(verbose_name='Euro Rate', max_digits=5, decimal_places=4)
dollarRate = models.DecimalField(verbose_name='DollarRate', max_digits=5, decimal_places=4)
【问题讨论】:
-
请展示您的模型。
-
@Gocht 添加了模型。同样,可能有一些变化。
-
什么是obj?你想得到什么,请把你的问题说清楚。
-
对不起,我在最初的帖子中表示我是 Django/Python 的新手,但是,它被删除了。
-
@Gocht 基本上,我想根据匹配的日期值用汇率模型中的欧元和美元汇率填充发票模型中的欧元和美元汇率
标签: python django filter model