Django | Не сохраняется поле ManyToManyField через форму
Есть модель:
class Forecast(models.Model):
text = models.TextField('Текст прогноза', blank=True, null=True)
match = models.ManyToManyField(to='matches.Match')
Форма:
class ForecastForm(forms.ModelForm):
match = forms.ModelMultipleChoiceField(queryset=Match.objects.all())
class Meta:
model = Forecast
fields = ['text']
И есть view:
def add(request):
if not request.user.is_authenticated:
return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
else:
forecastform = ForecastForm(request.POST)
if request.method == 'POST':
if forecastform.is_valid():
forecast = forecastform.save(commit=False)
forecast.author = request.user
forecast.save()
forecastform.save_m2m()
else:
forecastform = ForecastForm
return render(request, 'forecasts/add.html', {'forecastform': forecastform} )
Ну и, собственно, мне нужно через форму добавлять объекты Forecast. Всё работает, но поле match со связью ManyToManyField не записывается. Есть идеи почему?