python - 为什么不保存对字段的更改
问题描述
我不知道为什么它没有将更改从 false 保存为 true。请帮忙。is_approved 和 is_superuser 是用户 u 的属性。
谢谢
编辑:用户模型的代码
class User(AbstractUser):
TRAINEE = 1
MENTOR = 2
MODERATOR = 3
SUBMENTOR = 4
USER_TYPES = (
(TRAINEE, 'Trainee'),
(MENTOR, 'Industry Expert'),
(MODERATOR, 'Moderator'),
(SUBMENTOR,'SubMentor')
)
user_type = models.PositiveSmallIntegerField(choices=USER_TYPES, null=True, blank=True)
is_approved = models.BooleanField(default=False)
has_paid_subscription = models.BooleanField(default=False)
date_of_birth = models.DateField(null=True, blank=True)
bio = models.CharField(max_length=2000, validators=[MinLengthValidator(100)], blank=True, null=True)
profile_picture = models.ImageField(upload_to=profile_media_path, default='default_profile_pic.jpg', blank=True, null=True)
profile_tags = models.ManyToManyField(Tag, blank=True, related_name='profiles')
signup_completed = models.BooleanField(default=False)
referral_code = models.CharField(max_length=100,null=True,blank=True)
def __str__(self):
return self.username
def save(self, *args, **kwargs):
super(User, self).save(*args, **kwargs)
if self.bio:
self.profile_tags.clear()
lda_model = lda.LDA([self.bio])
tags = lda_model.generate_tags()
for tag in tags:
name = str(tag).capitalize()
try:
tag_object = Tag.objects.get(tag_name=name)
except Tag.DoesNotExist:
tag_object = Tag(tag_name=name)
tag_object.save()
self.profile_tags.add(tag_object)
tag_object.save()
@receiver(post_save, sender=settings.AUTH_USER_MODEL)
def create_auth_token(sender, instance=None, created=False, **kwargs):
if created:
Token.objects.create(user=instance)
解决方案
声明您正在编辑的模型。
user = u[0]
user.is_superuser=True
user.save()
从查询集中访问用户时会发生一些奇怪的事情,这会阻止它保存。不清楚原因的详细信息,但您可以按照上述模式解决它。
推荐阅读
- python - 当 n_components 为 None 时如何解释 Scikit-learn 的 PCA?
- python - 如何从 svg 字节流渲染 svg 图像
- vue.js - Parcel - Babel - Vue - 错误:找不到模块`.../.../img.svg`
- single-sign-on - Keycloak 如何使用 AdminURL 实现单点登出
- javascript - 如何使用 map() 为组件传递 ref
- javascript - 在我的 disocrd 服务器上使用 dm 命令时出现 Discord.js dming 问题
- r - R 无法正确解释大数
- apache-spark - 如何在 Spark GraphX 中编写 Pregel 中代码的主要结构?
- flutter - 如何确保按钮始终固定在向上滑动面板的底部 - Flutter
- python - 将具有“孩子”的xml转换为字典