在Django博客中添加类别路径
我在我的网站上添加了一个博客,到目前为止一切都很成功。根据下面的代码片段,我有一个slug字段,可以动态创建url和标记系统。我不是在寻找什么超级疯狂的东西,因为博客是专门用于搜索引擎营销的,但我错过了一件我需要帮助的重要事情 目前,当我创建一个新博客时,路径是www.mysite.com/blog/this-is-the-title-slug,但我真正需要做的是能够从管理仪表板创建并添加一个类别,然后像www.mysite.com/blog/mycategory/this-is-the-title-slug那样插入url 以下是我的一些代码:在Django博客中添加类别路径,django,django-models,django-templates,django-admin,django-views,Django,Django Models,Django Templates,Django Admin,Django Views,我在我的网站上添加了一个博客,到目前为止一切都很成功。根据下面的代码片段,我有一个slug字段,可以动态创建url和标记系统。我不是在寻找什么超级疯狂的东西,因为博客是专门用于搜索引擎营销的,但我错过了一件我需要帮助的重要事情 目前,当我创建一个新博客时,路径是www.mysite.com/blog/this-is-the-title-slug,但我真正需要做的是能够从管理仪表板创建并添加一个类别,然后像www.mysite.com/blog/mycategory/this-is-the-tit
from django.conf.urls import url
from . import views, feed
urlpatterns = [
url(r'^$', views.BlogIndex.as_view(), name='post_list'),
url(r'^(?P<slug>\S+)$', views.BlogDetail.as_view(), name="post_detail"),
url(r'^feed/$', feed.LatestPosts(), name="feed"), name='post_edit'),
]
我的URL:
from django.conf.urls import url
from . import views, feed
urlpatterns = [
url(r'^$', views.BlogIndex.as_view(), name='post_list'),
url(r'^(?P<slug>\S+)$', views.BlogDetail.as_view(), name="post_detail"),
url(r'^feed/$', feed.LatestPosts(), name="feed"), name='post_edit'),
]
指出类别插入位置的屏幕截图
谢谢你的帮助。新年快乐 您需要首先为category创建一个模型,类似于:
class Category(models.Model):
name = models.CharField(max_length=255, blank=False)
slug = models.SlugField(max_length=100, blank=False)
def __str__(self):
return self.name
并将类别添加到您的条目模型中:
class Entry(models.Model):
title = models.CharField(max_length=200)
... < the rest of your model>
category = models.ForeignKey(Category)
类条目(models.Model):
title=models.CharField(最大长度=200)
... < 模型的其余部分>
类别=型号。外键(类别)
现在,如果您想按类别进行筛选,请将其添加到URL.py中
url(r'^(?P<category>[^\.]+)/(?P<slug>[^\.]+)/$', 'yourview', name='post_detail'),
url(r'^(?P[^\.]+)/(?P[^\.]+)/$),'yourview',name='post_detail'),
请记住修改视图以接受类别作为参数,并筛选具有此类别的条目。您需要首先为类别创建一个模型,类似于:
class Category(models.Model):
name = models.CharField(max_length=255, blank=False)
slug = models.SlugField(max_length=100, blank=False)
def __str__(self):
return self.name
并将类别添加到您的条目模型中:
class Entry(models.Model):
title = models.CharField(max_length=200)
... < the rest of your model>
category = models.ForeignKey(Category)
类条目(models.Model):
title=models.CharField(最大长度=200)
... < 模型的其余部分>
类别=型号。外键(类别)
现在,如果您想按类别进行筛选,请将其添加到URL.py中
url(r'^(?P<category>[^\.]+)/(?P<slug>[^\.]+)/$', 'yourview', name='post_detail'),
url(r'^(?P[^\.]+)/(?P[^\.]+)/$),'yourview',name='post_detail'),
请记住修改视图以接受类别作为参数,并筛选具有此类别的条目。是否尝试过插入类别?我尝试过插入与slug模式相同的模型名称,但遇到错误。slug很容易理解,但我仍然对创建动态url有点迷茫。您尝试过插入类别吗?我尝试过插入与slug模式相同的模型名称,但遇到了错误。slug的事情很容易弄明白,但我仍然对创建动态url有点迷茫。非常简单-谢谢!!为了让其他人受益,我的视图链接变得非常简单-谢谢!!为了增加您的回复,让其他人受益,我的视图链接变成