日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

django 设置媒体url_Django设置网站地图sitemap

發布時間:2023/11/27 生活经验 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 django 设置媒体url_Django设置网站地图sitemap 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.安裝

安裝Sitemap APP的步驟如下:

  1. 在INSTALLED_APPS設置中添加'django.contrib.sitemaps';
  2. 確認你的TEMPLATES設置中包含DjangoTemplates后端,并將APP_DIRS選項設置為True,當然默認值就是這樣,只有當你曾經修改過這些設置,才需要修改這個配置;
  3. 確認你已經安裝sites framework.(在INSTALLED_APPS中添加'django.contrib.sites', 并添加設置SITE_ID=1,運行magrite)

2.例子

假設擁有一個News模型,并且您希望Sitemap包含指向所有新聞條目的鏈接.

# sitemaps.py
from django.contrib.sitemaps import Sitemap
from myweb.models import News
from django.urls import reverseclass NewsSitemap(Sitemap):changefreq = 'daily'    # 可選,指定每個對象的更新頻率priority = 0.6          # 可選,指定每個對象的優先級,默認0.5def  items(self):       # 返回對象的列表.這些對象將被其他方法或屬性調用return News.objects.all()def lastmod(self, obj): # 可選,該方法返回一個datetime,表示每個對象的最后修改時間return obj.pub_timedef location(self, obj):#可選.返回每個對象的絕對路徑.如果對象有get_absolute_url()方法,可以省略locationreturn reverse('new', kwargs={'new_id': obj.id})# url.py
from django.contrib.sitemaps import sitemap    # 導入sitemap視圖
from xxx.sitemaps import NewsSitemapsitemaps = {'new': NewsSitemap,
}
urlpatterns = [...url(r'^sitemap.xml$', sitemap, {'sitemap': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),
]

當客服端訪問 /sitemap.xml時,這將告訴Django生成一個Sitemap.

sitemap視圖需要一個額外的必需參數:{sitemaps': sitemaps}.sitemaps是一個字典,將小節的標簽(例如:new或blog)映射到Sitemap類(例如:NewsSitemap).它也可以映射到Sitemap類的實例(例如: NewsSitemap(some_var)).

3.靜態視圖的Sitemap

通常,您希望搜索引擎抓取工具索引既不是對象詳細信息頁面也不是列表頁的視圖(例如index頁面)。解決方案是在 items 中顯式列出這些視圖的網址名稱,并在網站地圖的 location 方法中調用 reverse()

from django.contrib.sitemaps import Sitemap
from django.urls import reverseclass StaticViewSitmap(Sitemap):priority = 0.7changefreq = 'daily'def items(self):return ['index']def location(self, obj):return reverse('index')

參考:The sitemap framework

總結

以上是生活随笔為你收集整理的django 设置媒体url_Django设置网站地图sitemap的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。