【发布时间】:2014-07-12 02:45:27
【问题描述】:
当用户在下方输入此网址时
www.example.com/1234
他必须被重定向到
www.example.com/1234/this-is-your-first-post
例如,如果你试试这个:
http://stackoverflow.com/questions/15443306/
您将被重定向到
http://stackoverflow.com/questions/15443306/hover-menu-in-right-side-of-fixed-div
实际上它不是redirect,它只是将url 自动扩展为slug field。
我想实现这个功能: 这是我的模型
class Article(models.Model):
title = models.CharField(max_length=20)
body = models.TextField()
# image = models.ImageField(upload_to="/", blank=True, null=True)
date = models.DateField()
likes = models.IntegerField()
slug = models.SlugField()
def save(self, *args, **kwargs):
if not self.id:
self.slug = slugify(self.title)
super(Article, self).save(*args, **kwargs)
def get_absolute_url(self):
return reverse('article_detail', kwargs={'slug':self.slug, 'pk':self.id})
def __unicode__(self):
return self.title
这是我的应用程序中的urls.py
urlpatterns = patterns('',
url(r'all$', ArticleList.as_view(), name='blog_all'),
url(r'^(?P<pk>\d+)/(?P<slug>[-\w\d]+)/$', ArticleDetail.as_view(), name='article_detail'),
)
【问题讨论】:
标签: django django-urls http-redirect