Считайте, что я определил следующие модели:
class Tag(models.Model):
name = models.CharField(max_length=20)
class Entry(models.Model):
title = models.CharField(max_length=100)
date = models.DateField()
tags = models.ManyToManyField(Tag)
и следующую модель:
class EntryForm(forms.ModelForm):
tags = CharField(max_length=100, label='Tags', required=False)
class Meta:
model = Entry
В основном у меня есть запись с тегами. Теги не обязательно уже созданы. Мне нужно получить заполненную форму заявки и сохранить ее с тегами.
Я могу сделать это легко, если у меня нет записи ManyToMany в Entry. Но с этим мне сначала нужно сохранить теги, затем добавить сохраненные теги к записи, а затем сохранить запись. Это означает, что я должен переопределить метод save () EntryForm.
Я уже видел этот вопрос, но он выглядит иначе. В моем случае мне нужно сохранять только теги, а остальные должны иметь возможность использовать функцию сохранения по умолчанию в ModelForm.
Я представил упрощенный пример. В реальном у меня есть намного больше полей в Entry.
Какова ваша рекомендация для написания метода save () EntryForm способом django?