-2
進出口新的Django和希望轉換ID /包段塞,我想讓網址是友好的或易於理解Django的轉換ID段塞
要拍URL http://127.0.0.1:8000/1/
到http://127.0.0.1:8000/hello/
Model.py
class Post(models.Model):
title=models.CharField(max_length=200)
description=models.TextField(max_length=10000)
pub_date=models.DateTimeField(auto_now_add=True)
comments=models.CharField(max_length=200, blank=True)
slug = models.SlugField(max_length=40, unique=True)
def __unicode__(self):
return self.title
def description_as_list(self):
return self.description.split('\n')
admin.py
class PostAdmin(admin.ModelAdmin):
list_display=['title','description']
prepopulated_fields = {'slug': ('title',)}
class Meta:
model = Post
admin.site.register(Post,PostAdmin)
urls.py
urlpatterns = [
url(r'^$', views.PostListView.as_view(),name='home'),
url(r'^(?P<slug>[\w-]+)/$', views.detail, name='detail'),
]
views.py
class PostListView(ListView):
model = Post
template_name = 'blog_post.html'
queryset = Post.objects.order_by('-pub_date')
paginate_by = 2
def detail(request, id):
posts = Post.objects.get(id=id)
return render(request, "blog_detail.html", {'posts': posts,})
模板
{% for threads in object_list %}
<p class="blog-post-title"><a href="{% url 'detail' slug=threads.id %}">{{ threads.title }}</a></p>
<hr />
{% endfor %}
任何幫助表示讚賞,使URL可讀。謝謝davance
您的看法,採取和id,而您的URL模式需要一個slu。。 –
@ AntoinePinsard ..要做什麼改變.. – Coeus
你應該找出自己。或者你明天會問同樣的問題,因爲你昨天問過相同的問題:http://stackoverflow.com/questions/36092955/django-noreversematch-at-qw-1 –