Как установить одинаковый уникальный первичный ключ в каждой модели приложения в зависимости от пользователя в django
я использовал пользовательскую модель пользователя в моем приложении django, первая модель, которая была сделана путем наследования abstractbase user, которую я отобразил как форму регистрации, теперь я создал другую модель, которую я хочу отобразить после регистрации пользователя в его/ее профиле, теперь я застрял на том, как назначить тот же уникальный первичный ключ в другой модели, которую я хочу отобразить после регистрации пользователя, чтобы я мог получить доступ к полям из обеих моделей.
from django.db import models
from django.contrib.auth.models import BaseUserManager, AbstractBaseUser,PermissionsMixin
class jobglobeluserManager(BaseUserManager):
use_in_migrations = True
username = None
def create_user(self, email=None, password=None, **extra_fields):
user = self.model(email=self.normalize_email(email))
user.set_password(password)
user.save(using=self._db)
return user
def create_superuser(self, email=None, password=None, **extra_fields):
extra_fields.setdefault('is_staff', True)
extra_fields.setdefault('is_superuser', True)
extra_fields.setdefault('is_active', True)
extra_fields.setdefault('is_admin', True)
if extra_fields.get('is_staff') is not True:
raise ValueError('Superuser must have is_staff=True.')
if extra_fields.get('is_superuser') is not True:
raise ValueError('Superuser must have is_superuser=True.')
return self.create_user(email, password, **extra_fields)
class jobglobeluser(AbstractBaseUser,PermissionsMixin):
userid = models.AutoField(primary_key=True)
joined_on = models.DateTimeField(auto_now_add=True)
is_staff = models.BooleanField(default=False)
is_superuser = models.BooleanField(default=False)
is_active = models.BooleanField(default=True)
is_admin = models.BooleanField(default=False)
useris = models.CharField(max_length=30)
FirstName = models.CharField(max_length=20)
LastName = models.CharField(max_length=20)
email = models.CharField(unique=True,max_length=100)
code = models.CharField(max_length=20)
mobile = models.CharField(max_length=13)
country = models.CharField(max_length=30)
state = models.CharField(max_length=30)
city = models.CharField(max_length=30)
Gender = models.CharField(max_length=20)
password = models.CharField(max_length=20)
password2 = models.CharField(max_length=20)
resume = models.FileField(upload_to='docs/')
objects = jobglobeluserManager()
USERNAME_FIELD = 'email'
REQUIRED_FIELDS = []
def __str__(self):
return self.email
def has_perm(self, perm, obj=None):
return True
def has_module_perms(self, app_label):
return True
class jobseekerprofile(models.Model):
userid = models.ForeignKey(jobglobeluser, on_delete=models.CASCADE,unique=True)
profileimg = models.ImageField(default='jobglobel/images/userpropic1.png' ,upload_to='profile_pics')
age = models.IntegerField(default=False)