簡體   English   中英

在創建模型記錄時創建django用戶

[英]create a django user while creating a records for model

如下的models.py

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

class members(models.Model):

    auto_id = models.AutoField(primary_key=True)
    member_name = models.OneToOneField(User)
    owner = models.ForeignKey('auth.User', related_name='webapi', on_delete=models.CASCADE)
    father_name = models.CharField(max_length=25, blank=False, default='')
    wife_name = models.CharField(max_length=25, blank=False, default='')
    number_of_child = models.IntegerField(blank=True)
    address_line_1 = models.CharField(max_length=40, blank=False, default='')
    address_line_2 = models.CharField(max_length=40, blank=True, default='')
    city = models.CharField(max_length=25, blank=False, default='')

    class Meta:
        ordering = ('member_name',)

現在,以上已與django auth Users表鏈接,並且在steriliser中它顯示了現有的Django用戶,我必須在提交期間選擇一個。

但是我的要求是作為管理員用戶登錄,然后手動提供member_name,這也將自動創建一個django用戶

django-annoying具有此功能,特別是AutoOneToOneField

來自他們的github的示例:

from annoying.fields import AutoOneToOneField

class MyProfile(models.Model):
    user = AutoOneToOneField(User, primary_key=True)

這將自動創建一個用戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM