在Django应用程序模型中,如何获取url前缀
我正在写一个名为在Django应用程序模型中,如何获取url前缀,django,Django,我正在写一个名为blogengine 在rooturl.py中: url(r'^blog/', include('blogengine.urls')), 在myblogengine/models.py中 class Post(models.Model): title = models.CharField(max_length=200) pub_date = models.DateTimeField() text = models.TextField() def
blogengine
在rooturl.py
中:
url(r'^blog/', include('blogengine.urls')),
在myblogengine/models.py中
class Post(models.Model):
title = models.CharField(max_length=200)
pub_date = models.DateTimeField()
text = models.TextField()
def get_absolute_url(self):
return "/blog/post/%s/" % self.id
在这里,我定义了一个带有硬编码前缀/blog/
的函数get\u absolute\u url
。
我如何防止这种硬代码,并使用某种方法在ROOT\u URLCONF
中获取前缀?不,这绝对不是这样做的方法。您的模型不应该关心前缀
相反,您应该使用提供的reverse
函数来计算URL,无论前缀是什么:
def get_absolute_url(self):
return reverse('blog-post', kwargs={'id': self.id})
不,绝对不是这样做的。您的模型不应该关心前缀
相反,您应该使用提供的reverse
函数来计算URL,无论前缀是什么:
def get_absolute_url(self):
return reverse('blog-post', kwargs={'id': self.id})
不,绝对不是这样做的。您的模型不应该关心前缀
相反,您应该使用提供的reverse
函数来计算URL,无论前缀是什么:
def get_absolute_url(self):
return reverse('blog-post', kwargs={'id': self.id})
不,绝对不是这样做的。您的模型不应该关心前缀
相反,您应该使用提供的reverse
函数来计算URL,无论前缀是什么:
def get_absolute_url(self):
return reverse('blog-post', kwargs={'id': self.id})
get_absolute_url()不是必需的:
url(r'^blog/$', views.post_list, name='post_list'),
url(r'^blog/(?P<post_id>[\w+-]*)/$', views.post_detail, name='post_detail')
url(r'^blog/$,views.post\u list,name='post\u list'),
url(r'^blog/(?P[\w+-]*)/$,views.post\u detail,name='post\u detail')
获取绝对url()不是必需的:
url(r'^blog/$', views.post_list, name='post_list'),
url(r'^blog/(?P<post_id>[\w+-]*)/$', views.post_detail, name='post_detail')
url(r'^blog/$,views.post\u list,name='post\u list'),
url(r'^blog/(?P[\w+-]*)/$,views.post\u detail,name='post\u detail')
获取绝对url()不是必需的:
url(r'^blog/$', views.post_list, name='post_list'),
url(r'^blog/(?P<post_id>[\w+-]*)/$', views.post_detail, name='post_detail')
url(r'^blog/$,views.post\u list,name='post\u list'),
url(r'^blog/(?P[\w+-]*)/$,views.post\u detail,name='post\u detail')
获取绝对url()不是必需的:
url(r'^blog/$', views.post_list, name='post_list'),
url(r'^blog/(?P<post_id>[\w+-]*)/$', views.post_detail, name='post_detail')
url(r'^blog/$,views.post\u list,name='post\u list'),
url(r'^blog/(?P[\w+-]*)/$,views.post\u detail,name='post\u detail')
您可以使用命名url的反向解析。这里是详细信息的链接
这是一个例子
url(r'^post/(?P<id>\d+)/$', post_view, name='post_detail'),
您可以使用命名url的反向解析。这里是详细信息的链接
这是一个例子
url(r'^post/(?P<id>\d+)/$', post_view, name='post_detail'),
您可以使用命名url的反向解析。这里是详细信息的链接
这是一个例子
url(r'^post/(?P<id>\d+)/$', post_view, name='post_detail'),
您可以使用命名url的反向解析。这里是详细信息的链接
这是一个例子
url(r'^post/(?P<id>\d+)/$', post_view, name='post_detail'),
谢谢你的回答,这很有帮助。通过命名url dispatcher,我可以在python和模板代码中使用反向解析,然后删除硬代码:)谢谢您的回答,这非常有帮助。通过命名url dispatcher,我可以在python和模板代码中使用反向解析,然后删除硬代码:)谢谢您的回答,这非常有帮助。通过命名url dispatcher,我可以在python和模板代码中使用反向解析,然后删除硬代码:)谢谢您的回答,这非常有帮助。我可以通过命名url dispatcher在python和模板代码中使用反向解析,然后删除硬代码:)