Как передать параметры из form в метод view? - Python
Формулировка задачи:
Здравствуйте!
url.py
view.py-пока такой нерабочий вариант
forms.py
lates_stickers.html
Как мне получить данные из рекуеста и добавить их в БД, а потом сделать редирект, что бы пользователь увидел обновление.
Правильно ли хоть делаю?
Заранее спс!
Решение задачи: «Как передать параметры из form в метод view?»
textual
Листинг программы
def create_post(request):
if not request.user.is_anonymous():
if request.method == 'POST': #меняете на гет в вашем случае
# обработать данные если метод POST
form = {
'text' : request.POST['text'], #так же только request.GET т.к. <input type="text" name="text"> имя поля text и в request.GET оно лежит
'title' : request.POST['title'] # тут вместо title из GET берите name="priority" 'priority' : request.POST['priority']
}
# в словаре form будет храниться введенная информация
if form['text'] and form['title']:
# если поля заполнены без ошибок
Article.objects.create( # создаете запись в бд
text=form['text'],
title=form['title'],
author=request.user)
#достаю только что созданную статью с целью получения ее id и редиректа на страницу с ней
article = Article.objects.filter(title=form['title'])
return redirect('get_article', article_id=article.id)
else:
# Если данные не корректны
form['errors'] = u'Не все поля заполнены'
return render(request, 'create_post.html', {'form': form})
else:
return render(request, 'create_post.html', {})
else:
raise Http404