如何制作一个美丽的"使用Django-Python的URL

时间:2014-06-24 20:55:48

标签: django url-rewriting django-forms

我有以下形式的网址产品:

/capidahl?fecha=2014-06-23&hora1=00&minutos1=00&hora2=23&minutos2=59

我希望缩短它,例如capidahl/2014/06/24.

如何使用Django重写URL?

2 个答案:

答案 0 :(得分:2)

这在django中很容易完成。在urls.py中,指定处理程序:

(r'^capidahl/(?P<fecha>[0-9-.]+)/*(?P<hora>[0-9]+)/*(?P<minutos>[0-9]+)', 'my_function')

然后,该函数处理变量:

def my_function(request, fecha, hora='12', minutos='00'):
    do something

解释于:https://docs.djangoproject.com/en/dev/topics/http/urls/

答案 1 :(得分:0)

这是一个关于如何在模型级别上进行的示例(根据需要进行更改):

class Article(models.Model):
    title = models.CharField( max_length = 255 )
    date_publish = models.DateTimeField(auto_now_add = True)
    def get_absolute_url(self):
        return 'capidahl/%s/%s/%s' %(self.date_publish.year, self.date_publish.strftime('%m'),  self.date_publish.strftime('%d'))