关于Django中文设置的一些简单问题
from: http://c2.teckoo.com/blog/django/django-chinese-settings.html
Posted on August 4, 2010 and tagged as django.
我在学Django时因为读的都是官方文档和英文博客, 没遇到中文的问题, 后来开始写第一个中文网站时就碰到了语言问题. 其实不难, 但也花时间试了几次才解决的. 写在这儿给自己提个醒, 初学者看了也省些时间.
终极解决之道
Python源代码
文件的保存方式
HTML template
Database
sqlite
PostgreSQL
MySQL
settings.py
终极解决之道
使用UTF-8编码
不要纠缠于GB2312, GB18030之类的问题, 徒增烦恼.
Python源代码
如果要在Python源代码中写中文注释或变量内容里出现中文的话, 需要在Python文件的第一行进行声明, 加下这面这行代码:
# -*- coding: utf-8 -*-
我接触Python是从1.x开始, 真正用是从2.x. 从Python3.0开始String才是真正的unicode. 而在Python2.x中如果出现非ASCII字符就必须加上UTF-8的声明.
文件的保存方式
无论你是用UltraEdit, Notepad+还是其它文本编辑器, 都要将文件编码设定为UNICODE. 例如我用vim, 相应的, 我在.vimrc里也加上了一行
set encoding=utf-8
这样我就不用操心源代码中的中文问题了.
HTML template
在HTML template中任何地方都可以直接写中文而不会出任何问题. 为了正确显示中文, 在head要加上一行
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我发现charset用gb2312和utf-8会影响浏览器显示各个单元的间距. 如果转换以前的网页, 就要多加点小心看看有什么地方要修改间距. 这是个苦活, 没法写test. 所以我很尊重前端设计师和测试人员. 这活儿我做不来, 会哭的.
Database
sqlite
很简单, 用manage.py syncdb直接生成就行了
PostgreSQL
sudo -u postgres createdb -E utf8 database_name
MySQL
CREATE DATABASE database_name DEFAULT CHARACTER SET utf8;
settings.py
在官方文档里并没有明确写明简体中文的代号是什么, 我看locale里生成的目录名是zh_CN, 我就跟着用了. 而且好象在ver 0.96里还管用. 到了ver 1.x里就不灵了. 后来才发现应该是
LANGUAGE_CODE = 'zh-cn'
在 'startproject' 生成的缺省settings.py里, 提到在这里有列表
http://www.i18nguy.com/unicode/language-identifiers.html
我没去看过, 也没机会用到其它语种.
分享到:
相关推荐
django4最新中文文档+适合python初学或者初次接触django4的开发者 从事Python编程工作的人员,一定听说过这三个框架:Django、Flask、Tornado,它们就像神一样的存在 Django是最有代表性的一种。许多成功的网站和APP...
### Django中文开发手册知识点概述 #### 一、Django简介(第一章) - **Django**是一种用Python编写的开源Web框架,遵循MVC(模型-视图-控制器)设计模式,但更倾向于MTV(模型-模板-视图)模式。 - Django的主要...
《精通 Django 中文版》是针对 Django 1.8 版本的一本深入教程,旨在帮助读者全面理解和掌握 Django 框架的核心概念和技术。Django 是一个基于 Python 的高级 Web 开发框架,以其“快速、优雅、可扩展”的特点深受...
这个中文文档包含了所有关于 Django 1.8.2 的详细信息,旨在帮助中文用户更好地理解和使用这个流行的 Python Web 开发框架。 **Django 框架基础** Django 是一个高级的、基于模型-视图-控制器(MVC)设计模式的 ...
至于【softhy.net.txt】,可能是手册的一部分文本内容或者是一份关于Django的笔记,包含具体的编程示例、问题解答或技巧分享。 总结起来,这份【Django 中文手册】涵盖了Django框架的主要组成部分和核心概念,通过...
**Django 中文教程概述** Django 是一个高级的 Python Web 框架,它遵循“干(Don't Repeat Yourself)”原则,旨在简化网站开发过程。这个教程是为那些希望学习 Django 并以中文理解其核心概念的人们设计的。 **第...
- **起步指南**:这部分是新手入门必备的教程,指导用户从零开始安装和配置 Django,并通过一个简单的示例应用程序来了解 Django 的基本结构和功能。 - **模型层**:解释了如何定义数据模型以及 Django ORM(对象...
除了上述基础知识点外,Django中文文档还涵盖了更多的高级内容,例如高级视图和URL配置、模板的高级进阶技巧、模型的高级进阶用法、通用视图的使用、Django项目的部署、输出非HTML内容、处理会话、用户认证和注册、...
**Django 2 中文版**是一份针对不熟悉英文的开发者精心编译的学习资源,旨在帮助他们更好地理解和掌握Python的热门Web框架——Django。这份资料深入浅出地介绍了Django 2的关键概念和技术,使得中文用户也能无障碍地...
**Django 中文手册** Django 是一个高级的 Python Web 开发框架,它遵循“DRY(Don't Repeat Yourself)”原则,旨在让开发者能够快速、高效地构建高质量的 web 应用。这个中文手册是为那些希望学习或深入了解 ...
《Django Book 2.0 中文版》是关于Django框架的一本全面教程,它旨在帮助读者理解和掌握Django的各个核心概念和技术,从而高效地进行Web开发。Django作为一个开源的Python Web框架,其设计哲学是“简洁、实用、优雅...
Django-REST-framework教程中文版是一份关于如何使用Django-REST-framework来快速创建REST风格API的中文教程。Django-REST-framework是一个建立在Django框架之上的强大的REST API工具包,它允许开发者利用Django的...
4. **Admin站点**:Django提供了一个内置的管理站点,允许开发者通过简单的配置管理数据库中的数据。通过admin站点,可以方便地添加、删除和修改数据记录。 5. **表单处理**:Django的表单系统允许开发者处理用户...
《官方DjangoBook中文版》是一份详尽的Django框架学习资料,旨在为初学者和进阶者提供全面的指导。Django是基于Python语言的高性能Web开发框架,以其MVC(Model-View-Controller)设计模式和“ batteries included ...
### Django Book中文版知识点概述 #### 一、Django简介 **Django**是一个开源的Web框架,基于Python语言编写,旨在简化Web开发过程。它采用Model-View-Controller(MVC)架构模式中的MTV(Model-Template-View)...
这个官方中文文档的出现使得国内的开发者能够更方便地学习和理解 Django,避免了语言障碍带来的困扰。本文将深入探讨 Django 1.8.2 的核心知识点,帮助读者掌握这一强大的 Web 开发框架。 一、Django 概述 Django ...
《Django中文学习.pdf》是一本关于Web应用框架Django的中文教程,涵盖了从入门到高级的全方位知识。Django是一个高效、免费且开源的Python Web框架,它遵循MTV(Model-Template-View)设计模式,旨在简化Web开发过程...
Django Book中文版,是由Google推出的关于Django的电子书籍,对于学习和掌握Django框架提供了详尽的指导。 **Django的核心组件** 1. **模型(Models)**:Django的核心在于ORM(对象关系映射),模型是与数据库...
- **安装与设置**:Django 的安装通常通过 pip 完成,然后设置环境变量和项目目录结构,包括创建虚拟环境以保持开发环境的隔离。 - **项目与应用**:在 Django 中,项目是一个包含多个应用的容器,而应用则专注于...
以上内容只是 Django 2.0 官方中文文档的部分精华,实际文档中还包括更详细的教程、API 参考、最佳实践以及常见问题解答等内容。通过深入学习和实践,开发者可以充分利用 Django 的强大功能,快速构建出高效、安全的...