[英]Django update field
我正在尝试学习Django,所以我几乎是个菜鸟。
我已经尝试了两个小时,做了以下简单的任务。 我知道语法错误,但是搜索Google&SO并没有帮助我,因此我需要一些建议。
我正在尝试从Django模板更新db字段,但是我需要帮助来了解如何在下面的LanguageVersions views.py代码中更新language_code_disabled 。
这是我的models.py文件代码:
class LanguageVersion(models.Model):
"""Language version selection for a user"""
user = models.ForeignKey(User)
language_code = models.CharField(max_length=32)
language_code_disabled = models.BooleanField(default=False)
def __unicode__(self):
return unicode(self.language_code)
这是我的views.py代码:
@login_required
def language_versions_enable(request):
if request.method == 'POST':
language_version = LanguageVersion.objects.get(pk=language_version_id, user=request.user)
# don't enable Language Version for currently selected language preference.
if language_version.language_code != request.user.userprofile.language_preference:
if language_version.language_code_disabled == True:
# if the users Language Version is disabled, enable the disabled Language Version.
LanguageVersion.language_code_disabled = False # THIS IS THE LINE OF CODE I DO NOT UNDERSTAND HOW TO WRITE!
messages.success(request,_('successfully enabled.'))
return redirect('language_versions')
打扰一下简单的问题,但我无法弄清这个正确的答案。
您需要更新实例中的字段(而不是类中的字段),并调用该实例的save()
方法。
language_version.language_code_disabled = False
language_version.save()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.