为了账号安全,请及时绑定邮箱和手机立即绑定

如何添加链接到个人资料?Django 2.1.5

如何添加链接到个人资料?Django 2.1.5

温温酱 2021-10-10 14:34:08
我有网址,但它有错误。例如,链接必须是 example/profile/3,但模板重定向到 example/profile/4。使用信号创建配置文件。我在看,id 用户和 id 配置文件不匹配。也许,这里有错误。模板重定向到 ID 为“用户”的链接,而不是 ID 为“个人资料”的链接!请帮助我。模型.pyclass Profile(models.Model):    user = models.OneToOneField(User, on_delete=models.CASCADE)    first_name = models.CharField(max_length=30, blank=True, default='')    last_name = models.CharField(max_length=30, blank=True, default='')    location = models.CharField(max_length=30, blank=True, default='')    #other fields    def get_absolute_url(self):        return reverse('profile-detail', args=[str(self.id)])    def __str__(self):        return self.user.usernameclass Post(models.Model):    user = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)    #other fields        def __str__(self):        return self.title    def get_absolute_url(self):        return reverse('post-detail', kwargs={'pk': self.pk})信号.py@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 save_user_profile(sender, instance, **kwargs):    instance.profile.save()管理文件class ProfileAdmin(admin.ModelAdmin):    list_display = ('user', 'first_name', 'last_name', 'location', 'about_me', 'contacts')admin.site.register(Profile, ProfileAdmin)视图.pyclass PostCreateView(FormView):    form_class = PostForm    template_name = 'post/post_form.html'    success_url = reverse_lazy('posts')    def form_valid(self, form):        response = super(PostCreateView, self).form_valid(form)        form.instance.user = self.request.user        form.save()        return responseclass PostDetailView(generic.DetailView):    model = Post
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 245 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号