Проблемы с подтягиванием даты от моего объекта - PullRequest
0 голосов
/ 12 сентября 2018

У меня установлена ​​следующая модель:

class ReceiverActions(models.Model):
    ...
    date_paid = models.DateTimeField(default=datetime.now)

и я пытаюсь захватить только дату. Когда я запускаю это в моей оболочке:

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'], это прекрасно работает.

1 Ответ

0 голосов
/ 13 сентября 2018

У вас просто небольшое заблуждение: дикт rec_id содержит все поля в качестве ключей. Сначала нужно получить значение поля (которое также является значением dict), а затем вызвать методы it.

Кроме того, вы, похоже, неправильно написали имя поля: оно должно быть date_paid, а не paid_date.

Измените эту строку:

... = str(rec_id['paid_date.date()'])

к этому

... = str(rec_id['date_paid'].date())
...