`
xiaolin0199
  • 浏览: 573061 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

django绝对域名的切换

 
阅读更多

描述

为了SEO建设,试图将icgoo网站上的所有相对链接换成绝对链接

 

方案一

写道
每页都作这种处理会影响速度,现在采用的方式是用pyCall。
在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}}

 

方案二

写道
用 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绝对简明教程** Django是一款基于Python的开源Web框架,用于快速开发安全、可维护的网站。本教程将带你深入理解Django的核心概念和技术,帮助你快速上手并构建自己的Web应用。 1. **Django简介** Django...

    Django绝对简明教程.pdf

    根据给定的文件信息,以下是从“Django绝对简明教程.pdf”中提炼出的关键知识点,涵盖的内容包括Django框架的基础概念、视图处理、URL配置、模板使用、过滤器应用以及模型数据库操作。 ### Django框架简介 Django...

    Django绝对简明手册.doc

    Django绝对简明手册是一个关于Django框架的详细指南,旨在帮助开发者快速理解和掌握Django的基本概念和使用方法。Django是一个用Python编写的开源Web应用框架,它遵循模型-视图-控制器(MVC)架构模式,强调“约定...

    django电子商务网站源码.zip

    django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django...

    Django实现商城网站源码.zip

    Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django...

    Django客户管理系统源码.zip

    Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统...

    django笔记 django笔记

    Django是Python编程语言中的一款强大且流行的Web框架,它以“快速开发”和“约定优于配置”的理念为核心,让开发者能够高效地构建高质量的Web应用程序。本笔记将深入探讨Django的基础概念、核心功能以及实际应用。 ...

    Django切换MySQL数据库.md

    Django切换MySQL数据库

    基于Django的个人网盘源码.zip

    基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django...

    Python基于Django的就业系统源码.zip

    基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于...

    Django切换MySQL数据库.rar

    本教程将详细探讨如何在Django项目中从默认的SQLite数据库切换到MySQL数据库。 首先,让我们了解Django与数据库的连接。Django的数据库设置位于项目的settings.py文件中。默认情况下,Django使用SQLite数据库,因为...

    django项目实例(django 简易博客开发)

    前几天写的django 简易博客开发记录,贴个链接吧 django 简易博客开发 1 安装、创建、配置、admin使用 http://www.cnblogs.com/cacique/archive/2012/09/29/2707976.html django 简易博客开发 2 模板和数据查询 ...

    django4中文文档

    django4最新中文文档+适合python初学或者初次接触django4的开发者 从事Python编程工作的人员,一定听说过这三个框架:Django、Flask、Tornado,它们就像神一样的存在 Django是最有代表性的一种。许多成功的网站和APP...

    django+scrapy结合

    本篇文章将详细探讨如何将两个强大的Python库——Django和Scrapy结合,以实现通过Django的Web界面控制Scrapy爬虫的运行,并将爬取的数据存入数据库。 首先,让我们了解这两个框架的基本概念。Django是一个高级的Web...

    Django实现在线视频课堂播放网站源码.zip

    Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频...

    Django入门与实践教程1

    最后,【项目部署】章节将介绍如何将本地开发的Django项目部署到云端服务器,包括购买云主机、域名,以及配置服务器环境。这使得读者能够将学习成果应用于实际生产环境。 这个教程适合有一定Python基础但对Django...

    Django documentation Django API

    Django documentation Django API Django

    Django从零开发的个人博客网站源码.zip

    Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客...

    django4.1中文手册

    Django 文档¶ 你所需要知道的关于 Django 的一切。 快速入门¶ 你是刚学 Django 或是初学编程? 这就是你开始学习的地方! 从零开始: 概要 | 安装 入门教程: 第 1 节:请求和响应 | 第 2 节:模型和管理站点 | ...

    Django_layui后台模板

    【Django_layui后台模板】是一个专门为Django框架设计的、基于Layui前端框架的后台管理模板。Django是Python开发的一款高级Web框架,它强调代码的可读性和简洁性,而Layui则是一款轻量级的前端UI框架,提供了丰富的...

Global site tag (gtag.js) - Google Analytics