Я работаю над небольшим приложением Django. Я хочу получить входные значения от пользователей, используя форму с 4 полями с именем любовь, потребность, деньги и хорошо . Я хочу получить доступ к этим значениям и применить функцию с именем Find_purpose () и вернуть страницы на основе результата этой функции. Я получаю две ошибки все время, если изменение возврата отступа () отступ
1. Представление target_finder.views.form_fill не возвращало объект HttpResponse. Вместо этого он вернул None.
2. результат, вызываемый до присвоения
Я использовал Find Purpose для относительного URL новой страницы с именем result.html , но потом я понял, что это просто еще одна ссылка href, поэтому она не будет никакой пользы , Затем я использовал кнопку submit , но после этого ничего не показывалось. Мой find_purpose () работает очень хорошо, когда используется с простыми строковыми данными, и возвращает набор, включающий много пересечений.
forms.py
from django import forms
class FormName(forms.Form):
need=forms.CharField(widget=forms.Textarea, label="Things Society
Need")
love=forms.CharField(widget=forms.Textarea, label="Things you love
doing")
money=forms.CharField(widget=forms.Textarea, label="Things that can
earn you money")
good=forms.CharField(widget=forms.Textarea, label="Things you are good
at")
это для views.py
from django.shortcuts import render
from purpose_finder import forms
from purpose_finder.functions import find_purpose
def index(request):
return render(request,'purpose_finder/index.html')
def form_fill(request):
form=forms.FormName()
return render(request,'purpose_finder/form.html',{'form':form})
def purpose_is(request):
form=forms.FormName()
if request.method=='POST':
form=forms.FormName(request.POST)
if form.is_valid():
need = form.cleaned_data['need']
love = form.cleaned_data['love']
money = form.cleaned_data['money']
good = form.cleaned_data['good']
result=find_purpose(need,love,money,good)
else:
return render(request,'purpose_finder/index.html')
if len(result)==0:
return render(request,'purpose_finder/result.html',
{'my_result':"no purpose"})
else:
return render(request, 'purpose_finder/result.html',
{'my_result': result})
return render(request,'purpose_finder/index.html')
forms.html
% extends 'purpose_finder/base_html.html' %}
{% block body_block %}
<p>Please fill out the form to find the purpose of your life. You can
fill any numbers of entries separated by , </p>
<div class="container">
<form method="POST">
{{ form.as_p }}
{% csrf_token %}
<input type="button", value="Submit" >
</form>
</div>
{% endblock %}
result.html
{% extends 'purpose_finder/base_html.html' %}
{% block body_block %}
<h1>This is your result</h1>
{{ my_result }}
{% endblock %}
Это ошибки, которые продолжают появляться
The view purpose_finder.views.form_fill didn't return an HttpResponse
object. It returned None instead.
второй -
result referenced before assignment
Теперь, когда я использовал кнопку submit , она ничего не делает.
Как я могу заставить мою программу работать. И, пожалуйста, не сообщайте, если это слишком долго. Я надеюсь, что вы профессионалы, и я могу создать новый идентификатор и спросить еще раз Пожалуйста, помогите.