Добрый вечер, извиняюсь за то, что, вероятно, очень простой вопрос c, но я прятался здесь несколько дней и пока не нашел решение, которое подходит.
Короче говоря, у меня есть очень простая модель с логическим полем, которую я хотел бы переключать с помощью щелчка. Файл модели:
class Book(models.Model):
title = models.CharField(max_length=254, default='')
author = models.CharField(max_length=254, default='')
genre = models.CharField(max_length=254, default='')
price = models.DecimalField(max_digits=6, decimal_places=2)
checkedOut = models.BooleanField(default=False)
archived = models.BooleanField(default=False)
Я попытался вставить следующий метод в соответствующие файлы представлений / моделей (оба безрезультатно):
def check_out(self):
if self.checkedOut == False:
self.checkedOut = True
else:
self.checkedOut = False
self.save()
У меня есть следующее в URL:
url(r'^$', check_out, name='check_out')
и html для соответствующей кнопки:
<button class="check_btn button button-outline" method="post" type="submit" onClick="{% url 'check_out' %}">
<i class="fas fa-book"></i>
</button>
Я уверен, что упускаю что-то очевидное - или я пытаюсь упростить более сложная задача, но, кажется, ничего не работает. Я также попытался следовать совету здесь Измените логическое значение после нажатия на кнопку в Django, но аналогичным образом я не испытываю радости.