2017-09-27 4 views
0

Je crée un projet simple qui consiste à créer un CV par utilisateur. En résumé, un utilisateur peut avoir plusieurs expériences, formation et etc. C'est pourquoi j'ai créé le tableau suivant où l'expérience, les antécédents scolaires, les compétences sont étrangers à la table de reprise.Afficher les formulaires pour le modèle qui peut avoir plusieurs instances

class Resume(models.Model): 
    applicant = models.OneToOneField(User, on_delete=models.CASCADE) 
    name = models.CharField(max_length=100, blank=False, null=False, help_text="Full Name") 
    slug = models.SlugField(max_length=50, unique=True) 
    designation = models.CharField(max_length=200, blank=True, null=True) 
    city = models.CharField(max_length=100, blank=True, null=True) 

    def __str__(self): 
     return self.name 

class Education(models.Model): 
    resume = models.ForeignKey(Resume, related_name='education') 
    name = models.CharField(max_length=100, blank=False, null=False, help_text="Name of an institution") 
    course = models.CharField(max_length=200, blank=False, null=False, help_text="Name of a course") 
    description = models.CharField(max_length=400, blank=True, null=True) 
    start_date = models.DateField() 
    end_date = models.DateField() 

class Experience(models.Model): 
    resume = models.ForeignKey(Resume, related_name='experience') 
    designation = models.CharField(max_length=100, blank=True, null=True) 
    company = models.CharField(max_length=100, blank=True, null=True) 
    description=models.CharField(max_length=400, blank=True, null=True) 
    start_date = models.DateField() 
    end_date = models.DateField() 

class Skill(models.Model): 
    resume=models.ForeignKey(Resume, related_name="skills") 
    name = models.CharField(max_length=100, blank=True, null=True, help_text="Name of the skill") 

    class Meta: 
     verbose_name='Skill' 
     verbose_name_plural='Skills' 

    def __str__(self): 
     return self.name 

Maintenant, pour cette situation, dois-je créer un ResumeForm, EducationForm, etc ExperienceForm et créer une éducation, formset Expérience et compétence ou je dois faire autre chose. Je n'ai pas d'idée claire sur la façon d'aller de l'avant maintenant pour développer la forme avec une relation telle que où Education, Compétence peut avoir plusieurs instances. Quelqu'un peut-il me guider, s'il vous plaît?

+1

Je pense que vous cherchez formsets inline: http: // whoisnicoleharris. com/2015/01/06/implementation-django-formsets.html –

Répondre

1

Eh bien, la question est claire mais après avec votre idée que vous avez 2 options:

D'abord, vous pouvez avoir des valeurs existantes dans l'éducation, l'expérience, Savoir-faire. Ensuite, dans la vue, vous avez une case à cocher pour ajouter l'éducation, l'expérience, la compétence.

Deuxièmement, vous pouvez ajouter l'éducation, l'expérience, la compétence de créer un ModelForm pour chacun puis passer le CV, il n'est pas nécessaire, utiliser Formset ici