Django,UpdateView删除表中的一行
我完成了一个脚本的重新制作,因为我认为,另一个组件正在删除数据库中的一行,但它没有删除。我的脚本设法做到了这一点: 以下是事实:该模型称为“设置”,它作为一个单例实现:Django,UpdateView删除表中的一行,django,python-3.x,Django,Python 3.x,我完成了一个脚本的重新制作,因为我认为,另一个组件正在删除数据库中的一行,但它没有删除。我的脚本设法做到了这一点: 以下是事实:该模型称为“设置”,它作为一个单例实现: class Setting(SingletonModel): page = models.IntegerField() profile = models.ForeignKey(Profile, on_delete=models.CASCADE, blank=True, null=True, default=Non
class Setting(SingletonModel):
page = models.IntegerField()
profile = models.ForeignKey(Profile, on_delete=models.CASCADE, blank=True, null=True, default=None)
addmonitored = models.BooleanField(default=True, verbose_name="Add shows as monitored to Sonnar")
folders = models.BooleanField(default=True, verbose_name="Subfolders for seasons")
def __str__(self):
return "Settings"
class Meta:
verbose_name_plural = "Settings"
基本模型如下所示:
class SingletonModel(models.Model):
class Meta:
abstract = True
def save(self, *args, **kwargs):
self.pk = 1
super(SingletonModel, self).save(*args, **kwargs)
def delete(self, *args, **kwargs):
pass
@classmethod
def load(cls):
obj, created = cls.objects.get_or_create(pk=1)
return obj
class SettingsFormSetView(UpdateView):
model = Setting
exclude = ['page', 'xxxxxx']
template_name = 'settings.html'
def get_object(self):
return Setting.objects.get(pk=1)
def get_success_url(self):
return reverse('settings')
FormView如下所示:
class SingletonModel(models.Model):
class Meta:
abstract = True
def save(self, *args, **kwargs):
self.pk = 1
super(SingletonModel, self).save(*args, **kwargs)
def delete(self, *args, **kwargs):
pass
@classmethod
def load(cls):
obj, created = cls.objects.get_or_create(pk=1)
return obj
class SettingsFormSetView(UpdateView):
model = Setting
exclude = ['page', 'xxxxxx']
template_name = 'settings.html'
def get_object(self):
return Setting.objects.get(pk=1)
def get_success_url(self):
return reverse('settings')
我可以毫无问题地打开表单,输入数据,保存数据。我可以重新加载页面,但它仍然显示数据。如果我重新加载它几次,表单就会突然变空,并且该行(pk=1,这是该表中唯一的一行)也会从数据库中删除。
据我所知,没有其他东西在干扰。我别无选择,找不到问题的根源