Im un peu confus au sujet d'un marché M2M django, j'ai la question suivante:django M2M avec d'autres attributs
Chaque utilisateur peut a trop de compétences et par compétence à l'utilisateur doivent choisir le moment de l'expérience. Je veux dire, django-1 an, Heroku-3 ans, et comme ça, comment puis-je l'implémenter en django?
Mes modèles:
class Specialities(models.Model):
name = models.CharField(max_length=100)
def __unicode__(self):
return self.name
class Experience(models.Model):
specialities = models.ManyToManyField('self',through='RegisterProfessional',symmetrical = False)
years = models.CharField(max_length=100)
def __unicode__(self):
return self.years
class RegisterProfessional(models.Model):
id_document = models.OneToOneField(User)
specialities = models.ForeignKey(Specialities)
anios = models.ForeignKey(Experience)
Comment puis-je fixer mon modèle pour y parvenir?
merci pour votre réponse .. Voici où je suis confus, pourquoi FK dans la spécialité dans RegisterProfessional? Comment est-ce que je peux ajouter plus d'une spécialité dans RegisterProfessional? ... Dans l'admin du modèle d'utilisateur n'apparaît aucun champ. – dfrojas
Il doit s'agir d'un FK, RegisterProfessional est la table de jointure qui établit la relation m2m entre 'User' et' Speciality'. Sur l'admin, vous devez utiliser TabularInline comme mentionné dans la documentation https://docs.djangoproject.com/en/dev/ref/contrib/admin/#working-with-many-to-many-models et vous serez capable d'ajouter de nombreuses spécialités à un utilisateur. – Mounir