簡體   English   中英

Django:從表單更新對象

[英]Django: Update an object from form

我試圖使我的看法更新現有對象,用表單數據填充其attrs。 我發現語法是這樣的:

Auxi.objects.filter(id=auxi).update(name='The new name', age=23, role='The new role')

(假設auxi是視圖正在接收的對象id值)

但是問題在於,由於它具有52個attrs,因此它對於我的對象來說將變得太廣泛了,我只想告訴Django將來自對象的所有值替換為來自表單的數據。

我試過了:

form = AuxiForm(request.POST)
item = form.save(commit=False)
Auxi.objects.filter(id=auxi).update(form)

並且

Auxi.objects.filter(id=auxi).update(item)

但這是說update() takes 1 positional argument but 2 were given 有人可以幫我嗎? 抱歉,如果它是重復的帖子,我已經嘗試在某處找到它,但是找不到。

這就是我更新實例的方式:

obj, created = Auxi.objects.update_or_create(
    id=auxi,
    defaults={
        name='The new name', 
        age=23, 
        role='The new role'}
)
obj.save()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM