Django 如何将用户链接到用户模型

标签 django model profile

你好,我对 Django 还很陌生,还不了解用户的基本概念。 我能够创建一个注册页面来创建用户,这些用户显示在管理页面的“身份验证和授权 -> 用户”中。

现在我希望用户登录并创建他们的个人资料。他们应该添加一些额外的信息,如姓名、简介、图片等。 每个用户都应该能够添加和查看自己的个人资料。

为此,我创建了一个模型:

    class Profile(models.Model):
        firstname = models.CharField(max_length=50)
        lastname = models.CharField(max_length=50)
        bio = models.TextField()
        profile_pic = models.ImageField(upload_to="images/")
        def __str__(self):
            return self.firstname + ' | ' + self.lastname

在我的 View 和 html 中,我能够将这些信息添加到模型中。 但是我到底如何才能将这个“配置文件”模型与个人用户联系起来呢?我在这里想念什么?

最佳答案

您可以通过在 Profile 和默认 User 之间添加 OneToOneField 关系来实现此目的:

class Profile(models.Model):
    <b>user = models.OneToOneField(User, on_delete=models.CASCADE)</b>
    firstname = models.CharField(max_length=50)
    lastname = models.CharField(max_length=50)
    bio = models.TextField()
    profile_pic = models.ImageField(upload_to="images/")
    def __str__(self):
        return self.firstname + ' | ' + self.lastname

关于Django 如何将用户链接到用户模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69232612/

相关文章:

python - 如何使用 python/django 在 PDF 中添加数字签名或签名图像?

Django duplicate key value violates unique constraint 错误模型形式

ruby-on-rails - Ruby On Rails 模型中的自保存

maven-2 - Maven 配置文件和安装

ios - iOS 的 BT 4.0 LE 消费者文件

Django、模板、for 循环和循环

Django formset - 只有在没有初始数据集时才显示额外的字段?

ruby-on-rails - Ruby on Rails : filter associations on model based on several conditions

php - 我应该如何处理我的 Codeigniter 模型中的错误?

symfony - LexikJWT 通过 token 获取用户个人资料