如何在 Django 中使用 force_update?

Posted

技术标签:

【中文标题】如何在 Django 中使用 force_update?【英文标题】:How to use force_update in Django? 【发布时间】:2021-12-14 07:05:41 【问题描述】:
a = Article(title="New Article", slug="new-article")
a.save()
print a

输出

New Article

我如何使用 force_update 仅更新 title

【问题讨论】:

您不是在更新,而是在创建一条新记录。 【参考方案1】:

你可以试试这个方法:

a = Article(title="New Article")
a.save(force_insert=True)
print a


New Article
a.title = "Better Title"
a.save(force_update=True)
print a

【讨论】:

是的,我正在找这个,谢谢@gretal【参考方案2】:

Models.py:

class Article(models.Model):   
    title = models.CharField(max_length=50)
    slugfield ...

Views.py:

#Create a model instance
a = Article(title="New Article", slug="new-article")
a.save()
#Article object created



#To update an existing article object first select that object by,
article_to_be_updated = Article.objects.get(id = #article's id)



#now update the selected articles field and then save it by,
article_to_be_updated.title = "updated title"
article_to_be_updated.save()
#updated only the title and reflected changes to DB

【讨论】:

【参考方案3】:

如果你想用给定的 slug 更新记录,你可以这样做:

Article.objects.filter(slug='new-article')<strong>.update(title='New Article')</strong>

【讨论】:

以上是关于如何在 Django 中使用 force_update?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 django 中使用 $.post?

如何使用 Django Rest Framework 在 Django 中进行操作日志记录

如何在 JavaScript 文件中使用 Django 变量?

[Django] 如何在Django中使用前端工具链

如何在 Django 中使用 memcached?

如何在静态文件中使用 django 模板语法