Django - Boolean обновляется в веб-представлении, но не при экспорте - PullRequest
0 голосов
/ 18 сентября 2018

В зависимости от определенных условий в models.py, я бы хотел, чтобы ABC BooleanField был отмечен (зеленая галочка) или не отмечен (красный крест).Это я сделал без проблем;однако, когда я пытаюсь экспортировать (как CSV или XLSX) тот же набор данных с ABC BooleanField, BooleanField не обновляется ни в соответствии с веб-представлением, ни в установленном мной файле models.py.Не могли бы вы дать мне некоторое руководство?Ниже приведены части кода:

class something(models.Model)
    book = models.BooleanField(default=False)


... some code ...

    def bookcheck(self):
        if self.writingDate is not None:
            if self.publishDate is not None:
                self.book = True
                return True
            else:
                return False
        else:
            return False

    bookcheck.boolean = True

1 Ответ

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

Вам необходимо сохранить после обновления экземпляр вашей модели

if self.publishDate is not None:
    self.book = True
    self.save()
    return True

Это обновит строку в базе данных, которая соответствует объекту, который вы обновляете.

Не думаю, что следующеестрока кода будет работать

bookcheck.boolean = True

bookcheck здесь не определено.self.bookcheck есть, но даже тогда это функция, а не переменная, и поэтому она не имеет свойства, которое можно обновлять.

Примечание:

В Pythonвместо

if self.writingDate is not None:

вы можете сделать

if self.writingDate:
...