Как выполнить операцию объединения в Django?

Проект представляет собой конструктор резюме , в котором пользователь заполняет все данные, такие как личная информация, информация об образовании, проектах, опыте в форме, и система генерирует резюме в определенном формате .

Структура базы данных выглядит примерно так:-

  1. user table:- for authentication.
  2. resumeinfo :- here details like personal info ,education info are stored
  3. projectinfo table:- each resume created by user can have 0/1/or multiple projects
  4. experienceinfo table:- each resume have have 0/1 or multiple experience info

1 пользователь может создать несколько резюме. Каждое резюме имеет resumeinfo и может иметь 0 или более проектов и опыта.

** здесь представлены модели django **

class User(models.Model):
    fname=models.CharField(max_length=20)
    lname = models.CharField(max_length=20)
    gender = models.CharField(max_length=20)

    def __str__(self):
        return self.fname

class Resdata(models.Model):
    fname=models.CharField(max_length=20)
    lname = models.CharField(max_length=20)
    school = models.CharField(max_length=20)
    resumeno=models.CharField(max_length=20)
    creatorid=models.ForeignKey(User,on_delete=models.CASCADE)

    def __str__(self):
        return self.fname



class Project(models.Model):
    ptitle=models.CharField(max_length=20)
    pdesc=models.CharField(max_length=20)
    resume=models.ForeignKey(Resdata,on_delete=models.CASCADE)

    def __str__(self):
        return self.ptitle

class Exp(models.Model):
    etitle=models.CharField(max_length=20)
    edesc=models.CharField(max_length=20)
    resume=models.ForeignKey(Resdata,on_delete=models.CASCADE)

    def __str__(self):
        return self.etitle

Например, в таблице пользователей зарегистрировано 2 пользователя

  1. jack
  2. bob

джек создает 1 резюме, вводя все данные, в этом резюме джек вводит 3 информации о проекте и 2 информации об опыте работы.

Теперь Джек создает второе резюме, вводя все данные, в этом резюме Джек вводит только 1 проект и имеет без опыта

Я хочу создать объединение таким образом, чтобы мой ожидаемый выход был следующим:


джеки 1-го резюме:

Вся личная / образовательная информация из 1-го резюме Джека, информация о проекте 1 его 1-го резюме, проект 2 информация его 1-го резюме, проект 3 информация из его 1-го резюме, опыт 1 информация из его 1-го резюме, опыт 2 информация из его 1-го резюме,

джеки 2-го резюме:

Вся информация о личности / образовании из 2-го резюме Джека, информация о проекте 1 из его второго резюме


Вернуться на верх