【发布时间】:2019-03-17 22:13:29
【问题描述】:
我正在尝试更改我的数据库中对象的字段值。 我正在使用以下命令
我不知道为什么它没有将更改从 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)
【问题讨论】:
-
你能把你的用户模型的代码贴出来吗?
-
完成。从我的 models.py 文件中添加了代码
-
有什么帮助吗? @kevswanberg
标签: python sql django database