Dans mon application Un utilisateur peut créer un projet en lui donnant un nom.Définir l'attribut utilisateur après la création du projet
C'est mon modèle:
class Project(models.Model):
name = models.CharField(max_length=250)
team_id = models.ForeignKey(Team, blank=True, null=True)
project_hr_admin = models.ForeignKey(MyUser, blank=True, null=True)
def get_absolute_url(self):
return reverse('website:ProjectDetails', kwargs = {'pk' : self.pk})
def __str__(self):
return self.name
qui est mon point de vue:
class ProjectCreate(CreateView):
model = Project
fields = ['name']
template_name = 'project_form.html'
Comment puis-je configurer lorsqu'un utilisateur crée un projet project_hr_admin = models.ForeignKey (MyUser, vide = True, null = True) avec son ID et l'enregistrer dans la base de données ??
Thx vous
par une méthode 'save' –
Mieux, en remplaçant' form_valid' sur la vue, ce qui est spécifiquement couvert dans la documentation [editing views] (https://docs.djangoproject.com/fr/1.11/topics/class-based-views/generic-editing/#models-and-request-user). –
Thx Daniel Cela fonctionne parfaitement .. pourriez-vous s'il vous plaît si vous pouvez m'expliquer cette ligne super (AuthorCreate, self) .form_valid (formulaire), ou un autre doc? – Ben2pop