【发布时间】:2020-11-01 02:46:16
【问题描述】:
我有两个应用程序 menu 和 table。在应用程序table,我有这个模型:
class Table(models.Model):
available = models.BooleanField(verbose_name="Availability", default=True)
def set_availability(self, avail=False):
self.fields['available'] = avail
self.save()
def __str__(self):
return "Table " + str(self.id_num)
在应用程序menu 的其中一个视图中,我有以下调用:
from table.models import Table
def menu_category_view(request, table_pk):
table = Table.objects.get(pk=table_pk)
if table.available:
table.set_availability(False)
...
return render(request,
...)
当我的模板调用此视图时,我收到此错误消息'Table' object has no attribute 'fields'。在这里,我试图更新被调用实例的字段 available 的值(从 True 到 False)。我从一本书中得到了这个实现的建议。这是更新模型实例字段值的正确方法吗?谢谢。
【问题讨论】:
-
“我从一本书中得到了这个实现的建议。”烧掉那本书。或者也许买一本与 Django 相关的,因为没有 Django 相关的书会建议该代码。
标签: python django django-models