当前位置: 首页 > news >正文

高中学校网站模板/seo精灵

高中学校网站模板,seo精灵,网站开发 报价单,app是程序员做出来的吗Django提供了一个高层次的聚合内容框架,让我们创建RSS/Atom变得简单,你需要做的只是编写一个简单的Python类。 一、范例 要创建一个feed,只需要编写一个Feed类,然后设置一条指向Feed实例的URLconf就可以了,非常简单&am…

Django提供了一个高层次的聚合内容框架,让我们创建RSS/Atom变得简单,你需要做的只是编写一个简单的Python类。

一、范例

要创建一个feed,只需要编写一个Feed类,然后设置一条指向Feed实例的URLconf就可以了,非常简单,下面是一个示例,演示了某站点的最近五条新闻记录:

from django.contrib.syndication.views import Feed
from django.urls import reverse from policebeat.models import NewsItem class LatestEntriesFeed(Feed): title = "Police beat site news" link = "/sitenews/" description = "Updates on changes and additions to police beat central." def items(self): return NewsItem.objects.order_by('-pub_date')[:5] def item_title(self, item): return item.title def item_description(self, item): return item.description # item_link is only needed if NewsItem has no get_absolute_url method. def item_link(self, item): return reverse('news-item', args=[item.pk]) 

要设置链接这个feed的URL,只需要将这个Feed类的实例,作为参数,加入URLconf,如下所示:

from django.conf.urls import url
from myproject.feeds import LatestEntriesFeed urlpatterns = [ # ... url(r'^latest/feed/$', LatestEntriesFeed()), # ... ] 

注意:

  • 新建的Feed类继承于django.contrib.syndication.views.Feed。
  • title、link和description属性分别对应标准RSS的<title><link><description>元素。
  • items()方法简单地返回此Feed需要包含的对象,列表形式。
  • 如果你要创建一个Atom feed,而不是RSS feed,使用subtitle属性替代description。

还有一件事要做。在一个 RSS feed中,每一个<item>都有一个<title>, <link><description>, 我们需要告诉框架往这些对象里放入哪些数据。

  • 对于<title><description>,Django将尝试调用Feed类中的item_title()item_description()方法。 这两个方法都会被传入一个参数:item,也就是对象自己。

  • 对于<link>,Django首先会尝试调用item_link()方法,如果该方法不存在,则使用对象的ORM模型中定义的get_absolute_url()方法。

二、指定feed类型

默认情况下,使用RSS 2.0类型,如果要指定类型,在Feed类中添加feed_type属性,如下所示:

from django.utils.feedgenerator import Atom1Feedclass MyFeed(Feed): feed_type = Atom1Feed 

目前可用的类型有下面三种:

  • django.utils.feedgenerator.Rss201rev2Feed (RSS 2.01. Default.)
  • django.utils.feedgenerator.RssUserland091Feed (RSS 0.91.)
  • django.utils.feedgenerator.Atom1Feed (Atom 1.0.)

三、同时发布Atom和RSS feeds

要同时发布这两者,很简单,为你的Feed类创建一个子类,并且将其feed_type设置为你需要的类型,最后添加一条URLconf就可以了,如下所示:

from django.contrib.syndication.views import Feed
from policebeat.models import NewsItem from django.utils.feedgenerator import Atom1Feed class RssSiteNewsFeed(Feed): title = "Police beat site news" link = "/sitenews/" description = "Updates on changes and additions to police beat central." def items(self): return NewsItem.objects.order_by('-pub_date')[:5] # 增加下面的子类 class AtomSiteNewsFeed(RssSiteNewsFeed): feed_type = Atom1Feed # 修改类型 subtitle = RssSiteNewsFeed.description 

增加路由:

from django.conf.urls import url
from myproject.feeds import RssSiteNewsFeed, AtomSiteNewsFeed urlpatterns = [ # ... url(r'^sitenews/rss/$', RssSiteNewsFeed()), url(r'^sitenews/atom/$', AtomSiteNewsFeed()), # ... ] 

转载于:https://www.cnblogs.com/dontgiveup/p/9795765.html

http://www.jmfq.cn/news/5199841.html

相关文章:

  • 企业宣传片汇报片拍摄/徐州seo推广
  • wordpress 文章行距/西安seo网站推广优化
  • 怎么做免费的宣传网站/如何用html制作一个网页
  • 阿里巴巴国际站首页/杭州seo百度关键词排名推广
  • 阿里巴巴怎么做企业网站宣传/免费b站软件推广网站2023
  • 深圳网站建设服务合同/如何制作自己的网站?
  • 阿里巴巴的网站怎么做的/下载百度官方网站
  • 南京网站网站建设/厦门网
  • 做响应式网站一般都用哪些框架/网站搭建软件
  • 做教育的网站/广东宣布即时优化调整
  • 怎么做免费网站/深圳优化公司高粱seo较
  • 上海网站推广 优帮云/今日足球最新预测比分
  • 网站建设与规划实训总结/天津seo顾问
  • 网站 蓝色/今日国际新闻头条新闻
  • 动态网站的特点/糕点烘焙专业培训学校
  • 网站如何清除百度收录/长春网长春关键词排名站设计
  • 十堰秦楚网论坛十堰城事/百度seo是啥
  • 义乌设计网站/长沙百度推广运营公司
  • 沈阳手机网站制作/债务优化是什么意思
  • 四川网站制作/东莞seo项目优化方法
  • 南安网站定制/seo门户网站优化
  • 免费做宣传单页的网站/优化营商环境工作开展情况汇报
  • 网站域名服务器一年多少钱/网络推广应该怎么做啊
  • 天津建设局网站/seo关键词排名优化怎么样
  • wordpress如何修改首页/宁波关键词优化企业网站建设
  • 高端网站制作软件/产品营销策略有哪些
  • wordpress首页代码/seo营销排名
  • 做网站失败/做网站需要多少钱
  • 公司网站建设注意事项/大数据培训班需要多少钱
  • 赤壁专业建站公司/苏州百度