2016-08-05 2 views
0

django의 템플릿에서 href 태그를 사용하여 페이지를 올바르게 라우팅하는 방법은 무엇입니까? 내 urls.pydjango href 태그가 제대로 라우팅되지 않습니다.

urlpatterns = [ 
url(r'^admin/', admin.site.urls), 
url(r'^$', views.home_page, name='home_page'), 
url(r'^post/', include('blog.urls')), 
url(r'^post/(?P<slug>[-\w]+)/$', views.single_post, name='post'), 
url(r'^about/', views.about_page, name='about_page'), 
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

views.py

def home_page(request): 
posts = Post.objects.filter(publish_date__lte=timezone.now()).order_by('publish_date').reverse() 
paginator = Paginator(posts, 6) 
page = request.GET.get('page') 
try: 
    posts = paginator.page(page) 
except PageNotAnInteger: 
    posts = paginator.page(1) 
except EmptyPage: 
    posts = paginator.page(paginator.num_pages) 

return render_to_response('home.html', locals(), context_instance=RequestContext(request)) 

def single_post(request, slug): 
    post = get_object_or_404(Post, slug=slug) 
    return render_to_response('post/post_detail.html', locals(), context_instance=RequestContext(request)) 

def about_page(request): 
    return render_to_response(
    'about.html' 
) 

base.html

<div class="head-nav"> 
       <span class="menu"> </span> 
        <ul class="cl-effect-1"> 
         <li class="active"><a href="/">Home</a></li> 
         <li><a href="about/">About</a></li> 
         <li><a href="gaming/">Gaming</a></li> 
         <li><a href="tech/">Tech</a></li> 
         <li><a href="404.html">Shortcodes</a></li> 

         <li><a href="contact.html">Contact</a></li> 
            <div class="clearfix"></div> 
        </ul> 
      </div> 

문제는 그 다음 URL을 http://127.0.0.1:8000/post/post_title 에서 오전 때 내가 가고 싶은 것입니다 페이지에 대해, 그때 내가 navbar에서 링크를 누르면 그것은 링크 http://127.0.0.1:8000/post/post_title/about는 나에게 404를 준다. 그러나 약 페이지는 url에있다..

href 또는 urls에 문제가있을 수 있습니다.

답변

2

코드를 아래 줄로 대체하십시오.

<li><a href="{% url 'about_page' %}">About</a></li> 

urls.py에 명명 된 url을 정의 했으므로이를 잘 활용하십시오. 자세한 내용을 보려면이 문서를 읽으십시오. 그러면 명명 된 URL을 최대한 활용하는 데 도움이됩니다. Django URL's Dispatcher

+0

감사합니다 ... + Prateek – rohillasarthak

+0

@rohillasarthak : URL의 운영자 문서를 한 번 읽으면 장고에서 사용할 수있는 많은 새로운 기능을 알게됩니다. 언제나 도울 준비가되어 있습니다. – Prateek