django自身提供的sitemap和feed实现样例

简介: 《DJANGO BY EXAMPLE》这书的例子真是精心全过的, 基本的WEB开发过程全覆盖啊。 跟着一步一步的弄就OK啦。。可以长很多知道的。 这次跟着作的是sitemap和feed功能。 sitemap.

《DJANGO BY EXAMPLE》这书的例子真是精心全过的,

基本的WEB开发过程全覆盖啊。

跟着一步一步的弄就OK啦。。可以长很多知道的。

这次跟着作的是sitemap和feed功能。

sitemap.py

from django.contrib.sitemaps import Sitemap
from .models import Post


class PostSitemap(Sitemap):
    changefreq = 'weekly'
    priority = 0.9

    def items(self):
        return Post.published.all()

    def lastmod(self, obj):
        return obj.publish

feeds.py

from django.contrib.syndication.views import Feed
from django.template.defaultfilters import truncatewords
from .models import Post


class LatestPostFeed(Feed):
    title = 'My blog'
    link = '/blog/'
    description = 'New posts of my blog.'

    def items(self):
        return Post.published.all()[:5]

    def item_title(self, item):
        return item.title

    def item_description(self, item):
        return truncatewords(item.body, 30)

urls.py

url(r'^sitemap\.xml', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),

url(r'^feed/$', LatestPostFeed(), name='post_feed'),

样子:

目录
相关文章
|
Windows Python Linux
Django logging模板使用样例
还要注意,如果开发在WINDOWS上, 而正式运行在LINUX上, 还要分个叉判断一下的。
2280 0
|
API Python JavaScript
django rest_framework比较完整的自定义实现样例
里面有自定义的更新策略, 序列化时,考虑nest及显示。 很有参考意义。 然后,前端,可以考虑用angular.js或vue.js实现。 每次以token进行认证。 url.py router = DefaultRouter() router.
1699 0
|
Python
django自定义signal的发送和接收样例
想在项目中用上,就实习一下。 # coding:utf8 from django.dispatch import Signal from django.dispatch import receiver custom_signal = Signal() class...
947 0
|
16小时前
|
安全 数据库 C++
Python Web框架比较:Django vs Flask vs Pyramid
【4月更文挑战第9天】本文对比了Python三大Web框架Django、Flask和Pyramid。Django功能全面,适合快速开发,但学习曲线较陡;Flask轻量灵活,易于入门,但默认配置简单,需自行添加功能;Pyramid兼顾灵活性和可扩展性,适合不同规模项目,但社区及资源相对较少。选择框架应考虑项目需求和开发者偏好。
|
16小时前
|
前端开发 UED Python
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
|
16小时前
|
中间件 Python
中间件应用Django Middleware(Python)
【5月更文挑战第3天】中间件应用Django Middleware(Python)
36 6
中间件应用Django Middleware(Python)
|
16小时前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
22 3
|
16小时前
|
存储 搜索推荐 开发者
django-haystack,具有全文搜索功能的 Python 库!
django-haystack,具有全文搜索功能的 Python 库!
25 0