Python Django 1.6 301 url重定向不工作
我正在尝试使用django重定向应用程序进行301重定向,但当我访问旧url时,仍然会得到404页面。我遵循文档,在数据库中添加了一个新旧url,但它仍然不起作用 有没有其他方法来执行301重定向 我有这个urlPython Django 1.6 301 url重定向不工作,python,django,redirect,Python,Django,Redirect,我正在尝试使用django重定向应用程序进行301重定向,但当我访问旧url时,仍然会得到404页面。我遵循文档,在数据库中添加了一个新旧url,但它仍然不起作用 有没有其他方法来执行301重定向 我有这个urlhttp://localhost:8000/doclistings/?speciality=Dentist我希望它被重定向到http://localhost:8000/doclistings/?speciality=Dentists url.py url(r'^doclistings/$
http://localhost:8000/doclistings/?speciality=Dentist
我希望它被重定向到http://localhost:8000/doclistings/?speciality=Dentists
url.py
url(r'^doclistings/$', views.doclistings, name='doclistings'),
views.py
def doclistings(request):
d = getVariables(request)
if request.method == "GET":
form = DropdownSelectionForm(request.GET)
try:
s_name = request.GET['speciality']
except:
s_name = None
try:
l_name = request.GET['language']
except:
l_name = None
try:
g_name = request.GET['gender']
except:
g_name = None
d['s_name'] = s_name # adding these to the forms for the "selected" option
d['l_name'] = l_name
d['g_name'] = g_name
try:
doctors = filter_doctors(request=request, specialization=s_name, gender=g_name, language=l_name).order_by('-netlikes')
except Exception:
return error404(request)
else:
form = DropdownSelectionForm()
d['doctors'] = doctors
d.update({'form': form, 'languages': Language.objects.all()})
return render_to_response('m1/doclistings.html',d)
你真的不必做重定向。如果我错了,但您希望访问专业的值,并且如果用户在
牙医
中键入您希望它是牙医
,请更正
我认为确保正确填写GET请求的键、值的正确方法是表单验证。有很多方法可以进行表单验证,您可以使用javascript或django表单进行验证
但是,快速解决问题的方法是将一些逻辑传递到代码中,即如果speciality
=='doctor'
,则将其设置为doctors
比如说,
def doclistings(request):
d = getVariables(request)
if request.method == "GET":
form = DropdownSelectionForm(request.GET)
try:
s_name = request.GET['speciality']
if s_name == 'Dentist':
s_name = 'Dentists'
except:
s_name = None
try:
l_name = request.GET['language']
except:
l_name = None
try:
g_name = request.GET['gender']
except:
g_name = None
d['s_name'] = s_name # adding these to the forms for the "selected" option
d['l_name'] = l_name
d['g_name'] = g_name
try:
doctors = filter_doctors(request=request, specialization=s_name, gender=g_name, language=l_name).order_by('-netlikes')
except Exception:
return error404(request)
else:
form = DropdownSelectionForm()
d['doctors'] = doctors
d.update({'form': form, 'languages': Language.objects.all()})
return render_to_response('m1/doclistings.html',d)
让我知道这是否适合你
干杯,
BioBirdMan您好,您是否考虑过将两个url指向url中的同一个视图。py我不知道如何做到这一点。我已经用视图和URL更新了问题。您确定try-except表达式中的
doctors=…
正确吗?看来你的404错误来自这里。。。。