问题描述
我的views.py代码:
`from django.shortcuts import render
from .forms import *
from .models import for_point,against_point
def index(request):
return render(request,'debate_sample/content.html')
def for_view(request):
if request.method == 'POST':
form = for_form(request.POST)
if form.is_valid():
form.save()
all_items = for_point.objects.all
return render(request,'debate_sample/home.html',{all_items:'all_items'})
else:
all_items = for_point.objects.all
return render(request,{all_items:'all_items'})
def against_view(request):
if request.method == 'POST':
form = against_form(request.POST or None)
if form.is_valid():
form.save()
all_values = against_point.objects.all
return render(request,'debate_sample/home2.html',{all_values:'all_values'})
else:
all_values = against_point.objects.all
return render(request,{all_values:'all_values'})
`
home.html中的代码和home2.html中的类似代码
{% extends "debate_sample/content.html" %}
{% block content %}
<div class="#">
<p>for</p>
{% if all_items %}
{% for things in all_items %}<br/>
{{things.for_text}}
{% endfor %}
{% endif %}
<form class="form-inline my-2 my-lg-0" method="post">
{% csrf_token %}
<textarea name="for_text" rows="8" cols="80"></textarea>
<button type="submit" name="button">submit</button>
</form>
</div>
{% endblock %}
我能够显示文本区域,然后单击“提交”按钮,但是在单击“提交”按钮后,在文本区域下方未显示键入文本区域的文本。 我创建了模型和模型表单以在视图中编写代码。
解决方法
您在渲染中输入了上下文错误。应该是{'all_values': all_values}
,您正在创建一个字典以传递到渲染中,其中第一个参数是您的键,第二个参数是您的数据。