Welcome 微信登录

首页 / 操作系统 / Linux / Django Docs part 1(初识Django)

首先确保django已安装,我们可以尝试在python环境下import django,如果命令执行成功,则表示安装成功。接着来看看如何建立一个新的项目:通过一个命令来建立新项目:django-admin.py startproject mysite执行过以后在当前目录将会生成新目录mysite,在其目录下会生成如下文件:__init__.py,manage.py,setting.py,urls.py。各个文件的意义如下:*  __init__.py:这文件是空的,意义体现在python将审核该文件来确定该包为可引用的包。*  manage.py:该文件为一个命令行的工具,用户可通过该工具以交互式来管理运行该项目。*  setting.py: 该项目的配置文件,django配置文件将告诉你该项目是如何运转的。* urls.py: 该项目的url声明文件,用于匹配客户端请求链接。下一步来看看运行起来的django项目:之前提到的manage.py在这将很有用处,执行:python manage.py runserver执行完后你将看到如下信息:Validating models...0 errors found.Django version 1.0, using settings "mysite.settings"Development server is running at http://127.0.0.1:8000/Quit the server with CONTROL-C.在这里我们使用的是django自带的web,只限于测试开发,如果用于生产环境中,则建议使用其他的产品级的web服务器,如apache。这样当你在浏览器中访问http://127.0.0.1:8000/,你将会看到Welcome to Django. it works.如何来修改ip和端口来访问呢,通过如下命令则可实现:----修改访问端口python manage.py runserver 8080----修改IPpython manage.py runserver 192.168.1.100:8000接下来接触到的将是database(数据库)的设置:django任何的配置参数将通过setting.py来实现,如下:* Engine -- 定义使用哪种数据库,目前DJANGO支持如下数据库:postgresql_psycopg2,postgresql,mysql,sqlite3,Oracle.* Name -- 此处为数据库中此项目使用的库名。如果使用的是sqlite3,在你计算机里面会有一个文件,这里必须是一个完整的路径,如果文件不存在,系统将自动生成该文件。win下的为:c:/home/users/django/sqlite3.db* USER -- 数据库的用户名,如果使用的sqlite3,此处为空值;* PASSWORD -- 数据库密码,如果使用的是sqlite3,此处为空值;* HOST -- 数据库所在主机,如果与项目为同一台物理主机,此处为空值。如果你是个数据库新手,django建议你使用自带的数据库sqlite3。python2.5以后的版本都支持sqlite3.如果你使用了Postgresql或者Mysql,请确保建立了项目将要使用的数据库,建库语句为"create database database_name";django中通过命令:python manage.py syncdb 来实现数据库建表。接下来看看如何创建项目模块:现在我们在之前的mysite下建立一个新的模块polls,如下:python manage.py startapp polls这样我们就成功创建了polls模块,polls目录下将会有如下文件:__init__.py,models.py,tests.py,views.py。下面我们编辑models.py,建立两个模块类型:from django.db import modelsclass Poll(models.Model):               question = models.CharField(max_length=200)               pub_date = models.DateTimeField("date published") class Choice(models.Model):                 poll = models.ForeignKey(Poll)                 choice = models.CharField(max_length=200)                 votes = models.IntegerField()Poll和Choice都为models.Model的子类,charfield及datetimefield为表中的字段类型,像question和pub_date为地段名。django中也支持数据库多对一,多对多,一对一。Poll和Choice两个模块已经建立,如何让django生成他们相对应的表呢,这时,我们再一次编辑setting.py这个文件,让mysite知道polls的存在,在INSTALLED_APPS中添加polls,然后执行如下命令:python manae.py sql polls此时数据库中创建了polls_poll和polls_choice两个表。如果你有兴趣也可以登陆django官网了解其他命令:* python manage.py validate* python manage.py sqlcustom polls* python manage.py sqlclear polls* python manage.py sqlindexes polls* python manage.py sqlall polls表建好以后,我们再次运行python manage,py syncdb 确保数据库表被建立。Python通过signal可传递的信号列表Linux下跟踪记录每个用户对主机服务器进行的操作相关资讯      Django 
  • Django 安全限制绕过漏洞(CVE-2016  (今 20:36)
  • Django 1.10提供了PostgreSQL中的  (08月12日)
  • Ubuntu 14.04下Django+MySQL安装部  (02月26日)
  • 自动部署Django项目详解  (10月06日)
  • Django 之管理界面  (07月01日)
  • Django Book 2.0 中文版 PDF  (02月03日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数