У меня глобальный вопрос и вопрос о конкретной проблеме в контексте сигналов. Чтобы решить, какие проблемы, диспетчер сигналов наиболее полезен, перебор?
У меня проблема сохранения нескольких моделей с внешним ключом. Я предположил, что этот сигнал может решить эту проблему. Но я не могу понять, как, потому что я не понимаю объем сигналов.
модель
class CV(models.Model):
title = models.CharField(max_length=255)
# And other fields...
class HigherEducation(models.Model):
cv = models.ForeignKey(CV, blank=True, null=True)
institution = models.CharField(max_length=255)
# And other fields...
class ProfessionalExperience(models.Model):
cv = models.ForeignKey(CV, blank=True, null=True)
company_name = models.CharField(max_length=255)
# And other fields...
Все формы являются формами моделей, унаследованными от моделей выше. Последние два используются в наборе моделей. Все эти формы отображаются в одной HTML-форме в шаблоне.
форма
class CVForm(forms.ModelForm):
class Meta:
# All the stuff
class EducationForm(forms.ModelForm):
class Meta:
# All the stuff
class ExperienceForm(forms.ModelForm):
class Meta:
# All the stuff
Education = modelformset_factory(HigherEducation,
form=EducationForm,
max_num=2)
Experience = modelformset_factory(ProfessionalExperience,
form=ExperienceForm,
max_num=1)
В представлении мне нужно сохранить поля EducationForm
и ExperienceForm
с полем cv
с назначенным идентификатором текущей модели CV
.
Могу ли я решить эту проблему с помощью сигналов?
Трудно было сформулировать проблему, поэтому, если что-то не понятно, я отредактирую вопрос.