2012-08-11 2 views
0

저는 블로그 프로젝트를 진행하고 있습니다. 이제 127.0.0.1을로드합니다. 내가 만든 모든 게시물을 나열하는 내 기본 페이지를 참조하십시오. 해당 게시물 중 하나를 클릭하면 단일 페이지가 리디렉션됩니다. 해당 페이지의 URL은 127.0.0.1/first-post와 같습니다. 내가 할처럼 노력하고 무엇기본 URL을 추가하는 django

,

127.0.0.1/post/first-post

내가 어떻게 할 수 있습니까? 여기

from django.conf.urls import patterns, include, url 
from userside.models import Post 

urlpatterns = patterns('userside.views', 
    url(r'^$','index'), 
    url(r'^(?P<postslug>[-\w]+)',view ='singlePost', name='view_blog_post'), 
) 

내 models.py입니다 :

from django.db import models 
from django.db.models import permalink 
from autoslug import AutoSlugField 

class Post(models.Model): 
    title = models.CharField(max_length = 100) 
    text = models.TextField() 
    slug = AutoSlugField(populate_from='title',unique=True) 
    posted = models.DateField(auto_now_add=True) 

    def __unicode__(self): 
     return self.title 

    @permalink 
    def get_absolute_url(self): 
     return ('view_blog_post',None, {'postslug':self.slug}) 

그리고 여기 내 주요 urls.py입니다 : 여기

from django.conf.urls import patterns, include, url 

urlpatterns = patterns('', 
    url(r'^', include('userside.urls')), 
) 

여기

내 urls.py 파일입니다 내 views.py :

from userside.models import Post 
from django.shortcuts import render_to_response,get_object_or_404 
from django.template import RequestContext 


def index(request): 
    post_list = Post.objects.all().order_by("-posted") 
    return render_to_response('userside/index.html', 
           {'post_list':post_list}, 
           context_instance = RequestContext(request)) 

def singlePost(request,postslug): 
    post = get_object_or_404(Post, slug=postslug) 
    context = {'post':post} 
    return render_to_response('userside/detail.html',context,context_instance = RequestContext(request)) 

답변

2
url(r'^post/(?P<postslug>[-\w]+)',view ='singlePost', name='view_blog_post'), 
+0

작동합니다! 템플릿 파일에서 링크를 수정하는 것을 잊었습니다. index.html에서 링크를 편집했습니다. 그것은 위대한 작품. 고맙습니다 – alix

관련 문제