2016-08-01 77 views
1

在我的博客項目與Django,我想有一個頁面,如category.html顯示所有類別,當我點擊一個類別的鏈接,它顯示的artical類別,就像這樣:http:xxx/category顯示我所有的類別,並且http:xxx/category/django顯示所有的django的藝術品django web項目與類別

怎麼辦?

class CategoryView(ListView): 
    template_name = "index.html" 
    context_object_name = "article_list" 

    def get_queryset(self): 
     article_list = Post.objects.filter(category=self.kwargs['id']) 
     return article_list 

    def get_context_data(self, **kwargs): 
     kwargs['category_list'] = Category.objects.all().order_by('cate_name') 
     return super(CategoryView, self).get_context_data(**kwargs) 

回答

0

你可以讓另一應用程序稱爲類,那麼你就可以顯示所有相對於它們,就像創建,編輯,刪除類別,你也可以列出你所有類別,那就是你的,

在URL中的文件,你必須映射例如路線:

from django.conf.urls import include, url 
from . import views 

urlpatterns = [ 

    #rutas for category app 
    url(r'^$', views.list , name="input_list"), 

    url(r'^add/$', views.add, name="input_add"), 

    url(r'^edit/(?P<in_id>[0-9]+)$', views.input_update , name="input_update"), 

] 

的視圖文件將是這樣的:

def list(request): 

    cat_list = Category.objects.all() 

    return render(request, 'category/category_list.html',{ 'cat_list': cat_list }) 

。 。 。 的等了類應用

當然

的塔爾之前的其他部分,你必須從項目的URL映射到您的應用程序,並在模板目錄中的所有文件(你需要的所有HTML文件)