我有以下模型设置:
class ReceiverActions(models.Model):
...
date_paid = models.DateTimeField(default=datetime.now)
而我正试图抓住日期。当我在我的shell中运行它时:
ReceiverActions.objects.get(identifier="JLWY25B4").date_paid.date
我得到了合适的日期:2018-08-12
但是当我尝试在我的观点中调用它时:
ra = list(ReceiverActions.objects.filter(
seller_inventory=ss).values().order_by('id'))
rec_id = [
x
for x in ra
if x['seller_inventory_id'] == inventory['id']][0]
info['paid_date'] = str(rec_id['paid_date.date()'])
我没有定义。
我也尝试过['paid_date__date']
和['paid_date.date']
有谁知道为什么这不起作用?
编辑:当我调用其他值如red_id['identifier']
时,它可以完美地运行。
你只是有一个小的误解:dict rec_id
包含所有字段作为键。您需要首先获取字段值(也是dict值),然后调用方法。
而且,你似乎拼错了字段名称:它应该是date_paid
而不是paid_date
。
所以改变这一行:
... = str(rec_id['paid_date.date()'])
对此
... = str(rec_id['date_paid'].date())