当前位置:首页 > 企业简介 >

Django教程:第一个Django应用程序(1部分)

作者:曲靖市宁江木业有限公司 来源:www.ynnjmy.com 发布时间:2017-09-09 10:23:26

Django教程:第一个Django应用程序(1部分) Django教程:第一个Django应用程序(1部分)

2013-09-23 磁针石

请看实例。本教程中将创建一个基本的投票应用。

它由两部分组成:查看投票的结果和投票的公共网站;添加、修改和删除投票的管理站点。

请先确认Django已经安装并检查版本号:

# python -c "import django;print(django.get_version())"

1.5.1

本教程基于 Django 1.5.* 和Python 2.x。

寻求帮助:django-users或#django onirc.freenode.net

创建project

# django-admin.py startproject mysite

这将在当前目录创建 mysite 目录。注意需要避免使用 python 保留字或 Django 组件名作为project名称。尤其注意不要使用如:django (与 Django 本身会冲突) 或者 test (与 Python 内置的包名会冲突).

Project创建的文件如下:

# ls -R mysite

mysite:

manage.py mysite

mysite/mysite:

__init__.py settings.py urls.py wsgi.py

l 外层 mysite根目录是你project容器。对Django该目录名并不重要; 你可以重命名。

l manage.py: 可让你以各种方式与Django项目进行交互命令行工具。你可以在 django-admin.py和manage.py 中查看manage.py 更多信息。

l 内层 mysite目录是project的实际 Python 包。

l mysite/__init__.py: 包初始化文件,默认为空.

l mysite/settings.py: 配置文件。

l mysite/urls.py: project的 URL 声明。

l mysite/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

开发服务器

现在已经有一个简单的服务器了。进入外层mysite目录,执行

# python manage.py runserver

Validating models...

0 errors found

September 22, 2013 - 01:04:43

Django version 1.5.4, using settings'mysite.settings'

Development server is running athttp://127.0.0.1:8000/

Quit the server with CONTROL-C.

这样就启动了 Django开发服务器,一个纯Python的轻量级 Web 服务器。Django 包含了它。这样在产品投入使用之前不必配置产品服务器例如 Apache,方便更加快速开发。

**不要** 在任何生产环境中使用此服务器。它仅适用于开发。(Django提供的是 Web 框架的,而不是 Web 服务器。)

服务器运行时,在你Web 浏览器中访问http://127.0.0.1:8000/ 。你会看到 “Welcome toDjango”页面,表明开发服务器工作正常。

默认runserver 命令启动的开发服务器只监听localIP 的 8000 端口。

改变端口:

python manage.py runserver 8080

改变IP ,需要和端口号一起传递。因此,要监听所有外部 IP 地址:

python manage.py runserver 0.0.0.0:8000

更多资料参见runserver 。

数据库设置

编辑 mysite/settings.py 。这是一个普通的 Python 模块,包含了Django 模块级变量的设置。更改 DATABASES 中 'default' 下的以下键的值,站群系统,以匹配您的数据库连接设置。

l ENGINE – 'django.db.backends.postgresql_psycopg2'或'django.db.backends.mysql',或'django.db.backends.sqlite3', 'django.db.backends.oracle' , 更多的参见alsoavailable。

l NAME – 数据库名。对 SQLite,站群软件,是绝对路径的文件名(好像project下面文件直接输入文件名就可以,因为在GAE,SAE等云平台,是不太可能知道真实路径的?);如果该文件不存在,它会在第一次同步数据库时自动创建(见下文)。

当指定路径时,总是使用斜杠,即使是Windows 下(例如:``C:/homes/user/mysite/sqlite3.db``) 。

l USER – 用户名 ( SQLite 下不需要) 。

l PASSWORD – 密码 ( SQLite 下不需要) 。

l HOST – 数据库主机地址。如果是同一台物理机器,请将此处保留为空 (或者设置为 127.0.0.1) ( SQLite 下不需要) 。查看HOST了解详细信息。

如果你是数据库新手,我们建议使用 SQLite ,将 ENGINE 改为 'django.db.backends.sqlite3' 并且将 NAME 设置为你想存放数据库的地方。 Python 内置了SQLite,不需要额外安装。

当你编辑 settings.py 时,将 TIME_ZONE 修改为你所在的时区。默认值是美国中央时区(芝加哥)。

中国一般设置为TIME_ZONE = 'Asia/Shanghai'。

同时,注意文件底部的 INSTALLED_APPS 设置。它保存了当前 Django 实例已激活的所有 Django 应用。每个应用可以被多个项目使用,而且你可以打包和分发给其他人。

默认情况下,:setting:INSTALLED_APPS 包含以下应用,这些都是由 Django 提供的:

l django.contrib.auth – 身份验证系统。

l django.contrib.contenttypes – 内容类型框架。

l django.contrib.sessions – session 框架。

l django.contrib.sites – 网站管理框架。

l django.contrib.messages – 消息框架。

l django.contrib.staticfiles – 静态文件管理框架。

所有这些应用中每个应用至少使用一个数据库表,所以在使用它们之前需要创建数据库中的表:

python manage.py syncdb

syncdb 命令参照 settings.py 文件中的INSTALLED_APPS 设置创建必要的数据库表。每创建一个数据库表你都会看到一条消息,接着你会看到一个提示询问你是否想为验证系统内创建个超级用户。我们选择需要。

数据库命令行下输入:``dt``(PostgreSQL), SHOW TABLES; (MySQL), 或 .schema (SQLite) 可列出 Django 所创建的表。

创建模型

Djaong每个应用都是由Python 包,这些在Python path 中并且遵循django命名规范。 Django 有工具可以自动生成应用的基本目录架构,你可以专注于编写代码而不是去创建目录。

项目 ( Projects ) vs. 应用 ( apps )

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:仙桃网站制作 http://xiantao.666rj.com

  • 上一篇:是站长平台走的太快,还是草根站长脚步太慢
  • 下一篇:最后一页