Python 如何在第二页显示Django输入数据
我有一个简单的Django视图,它显示用户输入的文本。现在这个文本显示在同一个页面上,而不改变地址(scraping.html),但我想在新页面(scrapingscore.html)上显示它。我怎么能做到呢?我读到了关于HttpResponseRedirect的文章,并试着这么做,但没有成功,我感到困惑 views.pyPython 如何在第二页显示Django输入数据,python,django,Python,Django,我有一个简单的Django视图,它显示用户输入的文本。现在这个文本显示在同一个页面上,而不改变地址(scraping.html),但我想在新页面(scrapingscore.html)上显示它。我怎么能做到呢?我读到了关于HttpResponseRedirect的文章,并试着这么做,但没有成功,我感到困惑 views.py class HomeView(TemplateView): template_name = 'scraping.html' def get(self, re
class HomeView(TemplateView):
template_name = 'scraping.html'
def get(self, request):
form = HomeForm()
return render(request, self.template_name, {'form': form})
def post(self, request):
form = HomeForm(request.POST)
if form.is_valid():
text = form.cleaned_data.get('post')
form = HomeForm()
args = {'form': form, 'text': text}
return render(request, self.template_name, args)
class HomeView(TemplateView):
template_name = 'scraping.html'
def get(self, request):
form = HomeForm()
return render(request, self.template_name, {'form': form})
def post(self, request):
form = HomeForm(request.POST)
if form.is_valid():
text = form.cleaned_data.get('post')
form = HomeForm()
c = {text: 'bar'}
return render(request, 'scrapingscore.html', context = c)
forms.py
class HomeForm(forms.Form):
search = forms.CharField(label='search', max_length=100)
scraping.html
{% block content %}
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Upload text</button>
</form>
{{ text }}
{% endblock %}
views.py
class HomeView(TemplateView):
template_name = 'scraping.html'
def get(self, request):
form = HomeForm()
return render(request, self.template_name, {'form': form})
def post(self, request):
form = HomeForm(request.POST)
if form.is_valid():
text = form.cleaned_data.get('post')
form = HomeForm()
args = {'form': form, 'text': text}
return render(request, self.template_name, args)
class HomeView(TemplateView):
template_name = 'scraping.html'
def get(self, request):
form = HomeForm()
return render(request, self.template_name, {'form': form})
def post(self, request):
form = HomeForm(request.POST)
if form.is_valid():
text = form.cleaned_data.get('post')
form = HomeForm()
c = {text: 'bar'}
return render(request, 'scrapingscore.html', context = c)
我在scrapingscore.html中添加了“{text}”,如果您想在新页面上显示该数据,请执行以下操作
from django.shortcuts import render
def my_view(request):
# View code here...
#set your data here
c = {key_data: 'bar'}
return render(request, 'myapp/index.html', context = c)
现在在scrapingscore.html
上,将数据呈现为
{{key_data}}
非常感谢您的回复,我阅读了您提供的说明和链接,我尝试自己做,但网站没有重定向到“scrapingscore”-我编辑了第一篇帖子,并在底部添加了url.py和views.py现在的样子。我不确定URL.py,我在两个网站上都添加了相同的视图,但我应该在URL中这样做吗?您似乎在使用类基本视图,我建议使用函数基本视图,因为这是我的首选。看,这个问题解决了吗?如果是,请接受答案,以表明问题已经解决。