允许Django用户创建另一个

时间:2018-10-10 01:24:05

标签: python django django-models

首先,我是一个初学者。

我正在创建一个网站,供我的家人在圣诞节期间买卖礼物。每个人都可以为每个人发布礼物的想法。

我希望允许父母为孩子创建一个帐户并能够对其进行管理。例如。重命名,删除,更改个人资料图片...

我有一个与用户链接的个人资料模型...

我当时正在考虑创建儿童模型...?但是我被卡住了。

1 个答案:

答案 0 :(得分:0)

我认为可能的是,可以建立一个与用户类具有一对一关系的模型,如文档所述:

https://docs.djangoproject.com/en/2.1/topics/auth/customizing/#extending-the-existing-user-model

,然后在该模型中放置您想要可编辑的自定义数据,特权角色可以编辑非特权数据

我要留下一个例子:

from django.contrib.auth.models import User
from django.db import models

class Profile(models.Model):
    """Profile model

    Proxi model that extends de base data
    with orher information
    """
    user = models.OneToOneField(User, on_delete=models.CASCADE)

    website = models.URLField(max_length=200, blank=True)
    biography = models.TextField(blank=True)
    phone_number = models.CharField(max_length=20, blank=True)

    picture = models.ImageField(
        upload_to="users/pictures",
        blank=True,
        null=True)

    created = models.DateTimeField(auto_now_add=True)
    modified = models.DateTimeField(auto_now=True)

    def __str__(self):
        return self.user.username

我希望它对您有用