在django中保存对行的更改
我有一个用户作为外键的表。我正在模板中显示数据 我希望用户能够编辑或删除数据。我知道有一个save()方法可以实现这一点,但我不知道如何访问特定的行。如果我有以下型号:在django中保存对行的更改,django,Django,我有一个用户作为外键的表。我正在模板中显示数据 我希望用户能够编辑或删除数据。我知道有一个save()方法可以实现这一点,但我不知道如何访问特定的行。如果我有以下型号: class Inventory(models.Model): item = models.CharField(max_length=20, blank=True) needs_repairs = models.BooleanField(default=True) date = models.DateTim
class Inventory(models.Model):
item = models.CharField(max_length=20, blank=True)
needs_repairs = models.BooleanField(default=True)
date = models.DateTimeField(auto_now_add=True, blank=True)
def __str__(self):
return '%s %s'%(self.item, self.needs_repairs)
这是我的表格:
class InventoryForm(ModelForm):
class Meta:
model = Inventory
fields = '__all__'
还有一个观点:
def inventory(request):
model = Inventory
stuff = Inventory.objects.all()
form = InventoryForm(data = request.POST)
if request.method == "POST":
if form.is_valid():
obj = form.save(commit=False)
obj.save()
# return redirect('index')
else:
form = InventoryForm()
context = RequestContext(request)
return render_to_response('inventory.html', {
'form':form, 'stuff':stuff
}, RequestContext(request))
以及收集和显示数据的我的模板:
卡车库存
你有什么
需要修理
改变
{%用于stuff%}
{{things.item}
{{东西需要修理}
{%csrf_令牌%}
{%endfor%}
添加内容
{%csrf_令牌%}
{{form.as_ul}}
这可能会给您带来完整性错误,我认为这样的错误会
列“item”中的null值违反了notnull约束
试试这个-
def delete_item(item_id):
thing = Inventory.objects.get(pk=id)
thing.item = ''
thing.save()
或
Inventory.objects.filter(id=id).update(item='')
希望这对您有用。您遇到了什么错误?我猜是字段。项不能为“无”。