Django как добавить данные в базу данных через шаблон
Надо через шаблон как то добавить данные в профиль юзера many to many Надо чтобы оно добавлялось через простое нажатие на кнопку в шаблоне, но я совершенно не понимаю как это сделать models.py
class Profile(models.Model):
user = models.OneToOneField(CustomUser, on_delete=models.CASCADE, blank=True, null=True)
list_of_favorites = models.ManyToManyField(Kino, blank=True, default=None, related_name='list_user_kino_favorites')
list_in_plans = models.ManyToManyField(Kino, blank=True, default=None, related_name='list_user_kino_plans')
def __str__(self):
return self.user.username
Пытался сделать через форму, но ничего не получалось views.py
class GetKino(DetailView):
model = Kino
form_class = AddFavorite
template_name = 'home/single.html'
context_object_name = 'post'
def get_context_data(self, *, object_list=None, **kwargs):
context = super().get_context_data(**kwargs)
context['title'] = Kino.objects.get(slug=self.kwargs['slug'])
context['range'] = str(123)
return context
def addfavorites(request):
if request.method == 'POST':
user = request.user
form = AddFavorite(request.POST, instance=user)
if form.is_valid():
try:
form.save_m2m()
form.save()
return redirect('home')
except:
form.add_error(None, 'Ошибка')
else:
form = AddFavorite()
return (request, {'form': form})
forms.py
class AddFavorite(ModelForm):
class Meta:
model = Profile
fields = ('__all__')
exclude = ['user']
Код в шаблоне
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<div class="form-group text-center"><input type="submit" value="Добавить в любимое"></div>
</form>
Вроде форма даже не передается тк я не знаю как ее передать при DetailView