問題のある URL パターンは次のとおりです。
url(r'^$', business_list, name='business_list_home'),
url(r'^(?P<param>\w+)$', business_list, name='business_list_results'),
私の見解は次のとおりです。
@render_to('app/business_list.html')
def business_list(request, param=None):
queryset = Business.objects.all()
search_form = SearchForm
print request.GET
if param in request.GET:
param = request.GET.get('param')
if queryset.filter(city__iexact=param).exists():
queryset = queryset.filter(city__iexact=param)
elif queryset.filter(category__iexact=param).exists():
queryset = queryset.filter(category__iexact=param)
print queryset
else:
queryset = None
print queryset
return {'business_list': queryset, 'search_form': search_form}
request.GET['param']
基本的に、/Miami に行ったときにビューからアクセスできない理由がわかりません。print request.GET
版画<QueryDict: {}>
これを行う理由は、都市またはカテゴリのビジネスの結果を表示するための優れた URL スキームを使用するためです (そのため、ビューでも都市またはカテゴリであるかどうかを確認します)。これを達成するためのより良い方法があれば教えてください
url(r'^$', business_list),
url(r'^(?P<city>\w+)$', business_list),
url(r'^(?P<category>\w+)$', business_list),
url(r'^(?P<category>\w+)/(?P<city>\w+)$', business_list),
助けてくれてありがとう!