描述
为了SEO建设,试图将icgoo网站上的所有相对链接换成绝对链接
方案一
写道
每页都作这种处理会影响速度,现在采用的方式是用pyCall。
在base.html最前面加上 {% pycall mydj.tempfuns.get_siteurl() as SITEURL %}
以后需要完整url的地方前加上{{SITEURL}}就可以了,像这样<a href = "{{SITEURL}}/games">
在base.html最前面加上 {% pycall mydj.tempfuns.get_siteurl() as SITEURL %}
以后需要完整url的地方前加上{{SITEURL}}就可以了,像这样<a href = "{{SITEURL}}/games">
*有没有测试,用这种方法后,速度会慢多少?
*用 Django-toolbar 本地调试应该能看出页面加载时间。 这种 pyCall 是从数据库层读取配置呢,还是从 settings.py 中读取。如果是从数据库读取的确会慢一点点。
参考:http://markmail.org/message/2c5khn45bdhlzozv
写道
该方式采用的还是最直接的方法,不是页面整体相对地址转换,而是先在base.html中载入域名前缀变量SITEURL,
如需绝对地址,在每个url中手动添加变量{{SITEURL}}
如需绝对地址,在每个url中手动添加变量{{SITEURL}}
方案二
写道
用 tag{% url %}来返回绝对或相对路径
参考资料:http://webcache.googleusercontent.com/search?q=cache:2RZZ85CGB9IJ:bitkickers.blogspot.com/2010/11/django-url-tag-it-can-do-both.html+django+Relative+Absolute&cd=6&hl=zh-CN&ct=clnk
操作:
在urls.py中加入:
from django.core.urlresolvers import set_script_prefix set_script_prefix(settings.SITE_URL)
在settings.py中定义变量SITE_URL
SITE_URL = 'http://www.icgoo.net'
这样,在urls.py中有映射
写道
(r'^search/$', 'search.search_view', {}, 'satchmo_search'),
在模版中调用该url,使用tags,{%url satchmo_search%}, 此时模板中返回的就是绝对地址
总结:
写道
如果模本中url的调用,都是采用tags映射,而不是手动书写,该方案能很好的实现要求
补:
写道
发现语句set_script_prefix(settings.SITE_URL),不能直接加在urls.py中,而是要加在每次模板渲染都能运行的地方,
如每一个对应的视图函数中,或直接加在某个中间件中
如每一个对应的视图函数中,或直接加在某个中间件中
相关推荐
**Django绝对简明教程** Django是一款基于Python的开源Web框架,用于快速开发安全、可维护的网站。本教程将带你深入理解Django的核心概念和技术,帮助你快速上手并构建自己的Web应用。 1. **Django简介** Django...
根据给定的文件信息,以下是从“Django绝对简明教程.pdf”中提炼出的关键知识点,涵盖的内容包括Django框架的基础概念、视图处理、URL配置、模板使用、过滤器应用以及模型数据库操作。 ### Django框架简介 Django...
Django绝对简明手册是一个关于Django框架的详细指南,旨在帮助开发者快速理解和掌握Django的基本概念和使用方法。Django是一个用Python编写的开源Web应用框架,它遵循模型-视图-控制器(MVC)架构模式,强调“约定...
django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django...
Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django...
Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统...
Django是Python编程语言中的一款强大且流行的Web框架,它以“快速开发”和“约定优于配置”的理念为核心,让开发者能够高效地构建高质量的Web应用程序。本笔记将深入探讨Django的基础概念、核心功能以及实际应用。 ...
Django切换MySQL数据库
基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django...
基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于...
本教程将详细探讨如何在Django项目中从默认的SQLite数据库切换到MySQL数据库。 首先,让我们了解Django与数据库的连接。Django的数据库设置位于项目的settings.py文件中。默认情况下,Django使用SQLite数据库,因为...
前几天写的django 简易博客开发记录,贴个链接吧 django 简易博客开发 1 安装、创建、配置、admin使用 http://www.cnblogs.com/cacique/archive/2012/09/29/2707976.html django 简易博客开发 2 模板和数据查询 ...
django4最新中文文档+适合python初学或者初次接触django4的开发者 从事Python编程工作的人员,一定听说过这三个框架:Django、Flask、Tornado,它们就像神一样的存在 Django是最有代表性的一种。许多成功的网站和APP...
本篇文章将详细探讨如何将两个强大的Python库——Django和Scrapy结合,以实现通过Django的Web界面控制Scrapy爬虫的运行,并将爬取的数据存入数据库。 首先,让我们了解这两个框架的基本概念。Django是一个高级的Web...
Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频...
最后,【项目部署】章节将介绍如何将本地开发的Django项目部署到云端服务器,包括购买云主机、域名,以及配置服务器环境。这使得读者能够将学习成果应用于实际生产环境。 这个教程适合有一定Python基础但对Django...
Django documentation Django API Django
Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客...
Django 文档¶ 你所需要知道的关于 Django 的一切。 快速入门¶ 你是刚学 Django 或是初学编程? 这就是你开始学习的地方! 从零开始: 概要 | 安装 入门教程: 第 1 节:请求和响应 | 第 2 节:模型和管理站点 | ...
【Django_layui后台模板】是一个专门为Django框架设计的、基于Layui前端框架的后台管理模板。Django是Python开发的一款高级Web框架,它强调代码的可读性和简洁性,而Layui则是一款轻量级的前端UI框架,提供了丰富的...