我尝试使用 OneToOneField 扩展 django auth 用户模型,但无法解决此问题。
重复的键值违反了唯一约束“users_profile_user_id_key”详细信息:键(user_id)=(67)已存在。
我查了一下这个问题,有人说数据库不同步。
视图.py
def create_profile(request):
if request.method == 'POST':
user_form = UserRegistrationForm(request.POST)
profile_form = UserProfileForm(request.POST)
if user_form.is_valid() and profile_form.is_valid():
registration = user_form.save()
profile = profile_form.save(commit=False)
profile.user = registration
profile.save()
return redirect('index')
else:
user_form = UserRegistrationForm()
profile_form = UserProfileForm()
return render(request, 'registration/registration.html',
{'user_form': user_form,
'profile_form': profile_form})
Run Code Online (Sandbox Code Playgroud)
模型.py
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
user_image = models.ImageField(upload_to="blog/assets",
default="blog/assets/people-photo.jpg",
null=True)
birth_date = models.DateField(null=True, blank=True)
@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
if created:
Profile.objects.create(user=instance)
@receiver(post_save, sender=User)
def …Run Code Online (Sandbox Code Playgroud) 我尝试安装CKeditor,但找不到解决方法。
我尝试过的步骤
和
from ckeditor.fields import RichTextField
class MyModel(models.Model):
myfield = RichTextField()
Run Code Online (Sandbox Code Playgroud)
当我向管理页面请求正确的模型时,我只能得到空白的白色页面。终端上没有错误。CKeditor文件返回302 HTTP。
我的管理页面的屏幕截图
我可以在DOM上看到相关的ckeditor东西,这很奇怪。我错过了什么吗?