Django安装与介绍

 安装

Django是因Python为语言环境的,所以要先期保证计算机达曾经设置了Python。

Linux

ubuntu:

sudo pip install Django==1.11.7

装着指定了版本,可以修改版本号,或者不点名将设置软件源中已有些版本。

安到位后,可以进去及Python交互模式中查阅版本:

>>> import django
>>> print(django.get_version())
1.11.7

点是概括而常用的方法,除了这种办法,还足以下载Django的源码进行安装:

git clone https://github.com/django/django.git

这时会当当前目录中观看一个名也django的目,里面是流行版本的Django,随后在当前目录下执行如下操作:

sudo pip install -e ./django

网会提醒Django已经安装成功之信息:”Successfully installed Django”。

Windows

在cmd中执行:

pip install django==1.11.7

创办项目

方法一:

λ django-admin startproject mysite
λ tree /f
D:.
└─mysite
    │  manage.py
    │
    └─mysite
            settings.py
            urls.py
            wsgi.py
            __init__.py

方式二,在项目名称mysite后面来一个空格,然后还有一个句号(英文半交锋句号),如此呢得创造项目,只不过是当时文件夹下创造。

λ django-admin startproject mysite .
λ tree /f
D:.
│  manage.py
│
└─mysite
        settings.py
        urls.py
        wsgi.py
        __init__.py

起先服务

进入和manage.py同目录下实行:

 python manage.py runserver

会晤相如下信:

Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

此时再浏览器中输入http://127.0.0.1:8000/
或者http://localhost:8000/,就会看到如下图所示的结果。

sqlite 1

始建以

花色现已创造好了,网站呢发生了,接下要实现网站的切实成效,在Django中,人们管这些实际的力量称之为”应用”(application)。

λ python manage.py startapp blog                                                                                        
λ tree /f                                                                            
D:.                                                   
│  db.sqlite3                                         
│  manage.py                                          
│                                                     
├─blog                                                
│  │  admin.py                                        
│  │  apps.py                                         
│  │  models.py                                       
│  │  tests.py                                        
│  │  views.py                                        
│  │  __init__.py                                     
│  │                                                  
│  └─migrations                                       
│          __init__.py                                
│                                                     
└─mysite                                              
    │  settings.py                                    
    │  urls.py                                        
    │  wsgi.py                                        
    │  __init__.py                                    
    │                                                 
    └─__pycache__                                     
            settings.cpython-36.pyc                   
            urls.cpython-36.pyc                       
            wsgi.cpython-36.pyc                       
            __init__.cpython-36.pyc                   

脚对转移的文件进行简短说明

Django的任务管理命令行工具 django-admin.py

λ django-admin                                                                             

Type 'django-admin help <subcommand>' for help on a specific subcommand.                   

Available subcommands:                                                                     

[django]                                                                                   
    check                                                                                  
    compilemessages                                                                        
    createcachetable                                                                       
    dbshell                                                                                
    diffsettings                                                                           
    dumpdata                                                                               
    flush                                                                                  
    inspectdb                                                                              
    loaddata                                                                               
    makemessages                                                                           
    makemigrations                                                                         
    migrate                                                                                
    runserver                                                                              
    sendtestemail                                                                          
    shell                                                                                  
    showmigrations                                                                         
    sqlflush                                                                               
    sqlmigrate                                                                             
    sqlsequencereset                                                                       
    squashmigrations                                                                       
    startapp                                                                               
    startproject                                                                           
    test                                                                                   
    testserver                                                                             

翻开帮助信息:

D:\lcg\mysite                                                                            
λ django-admin help startapp                                                             
usage: django-admin startapp [-h] [--version] [-v {0,1,2,3}]                             
                             [--settings SETTINGS] [--pythonpath PYTHONPATH]             
                             [--traceback] [--no-color] [--template TEMPLATE]            
                             [--extension EXTENSIONS] [--name FILES]                     
                             name [directory]                                            

Creates a Django app directory structure for the given app name in the current           
directory or optionally in the given directory.                                          

positional arguments:                                                                    
  name                  Name of the application or project.                              
  directory             Optional destination directory                                   

optional arguments:                                                                      
  -h, --help            show this help message and exit                                  
  --version             show program's version number and exit                           
  -v {0,1,2,3}, --verbosity {0,1,2,3}                                                    
                        Verbosity level; 0=minimal output, 1=normal output,              
                        2=verbose output, 3=very verbose output                          
  --settings SETTINGS   The Python path to a settings module, e.g.                       
                        "myproject.settings.main". If this isn't provided, the           
                        DJANGO_SETTINGS_MODULE environment variable will be              
                        used.                                                            
  --pythonpath PYTHONPATH                                                                
                        A directory to add to the Python path, e.g.                      
                        "/home/djangoprojects/myproject".                                
  --traceback           Raise on CommandError exceptions                                 
  --no-color            Don't colorize the command output.                               
  --template TEMPLATE   The path or URL to load the template from.                       
  --extension EXTENSIONS, -e EXTENSIONS                                                  
                        The file extension(s) to render (default: "py").                 
                        Separate multiple extensions with commas, or use -e              
                        multiple times.                                                  
  --name FILES, -n FILES                                                                 
                        The file name(s) to render. Separate multiple                    
                        extensions with commas, or use -n multiple times.                

manage.py

D:\lcg\mysite
λ python manage.py

Type 'manage.py help <subcommand>' for help on a specific subcommand.

Available subcommands:

[auth]
    changepassword
    createsuperuser

[contenttypes]
    remove_stale_contenttypes

[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    sendtestemail
    shell
    showmigrations
    sqlflush
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    test
    testserver

[sessions]
    clearsessions

[staticfiles]
    collectstatic
    findstatic
    runserver

及django-admin进行比,发现代码来有同等,同时manage.py还有团结之特点。

django-admin命令对许正在django-admin.py文件,她于Django安装后保存于Django安装目录下。(windows的C:\Python36\Scripts,linux的/bin)

假设manage.py只是立了一个品类下,才保存于色之根本目录内。

可以说manage.py是本着django-admin的简封装。

至于两岸的重新多辨析,请参考官方文档:https://docs.djangoproject.com/en/1.11/ref/django-admin/

mysite

mysite是所修类之保管效果目录,这个目录的名目为用户所创建的项目名称的不同而异,它里面的几独文本时用于为整个项目展开参数配置。

  • settings.py:这个文件被富含了档次之初始化设置,可以针对所有项目进行关于参数的布,比如配置数据库、添加应用等。
  • urls.py:这是一个URL配置表文件,主要用URL映射到应用程序上,当用户要某个URL时,Django项目会因这个文件被的照射关系对某个目标靶,该对象好是某某应用的urls.py也得是有具体的视图函数。在Django中,这个文件为于称之为URLconf,这是Django非常强劲的一个特征。
  • wsgi.py:WSGI是Web Server
    Gateway
    Interface的缩写。WSGI是Python所选择的服务器和以标准,Django也会见采取。wsgi.py文件定义了俺们所开创的类还是WSGI应用。有关于WSGI的又多学问要参考官方文档:https://wsgi.readthedocs.io/en/latest/index.html
  • __pycache__:只有网站运行后它才见面出现,它事实上就是编译后底一个文件夹。里面还是以.pyc结尾的公文。

blog

blog是项目蒙所开创的品种有,用创造项目之一声令下还足以创造很多其他的用,每创建一个采取,Django都见面于项目的干净目录中开创一个子目录,并且目录中会生以下默认的文件:

  • admin.py:在斯文件中,可以自定义Django管理工具,比如设置管理界面能够管理的品类,或者通过更于定义和系统管理有关的类对象,向管理效果互补加新的始末。
  • apps.py:这个文件是Django1.10之后多的,通常含相应之布置,比如为治本效能提供一个符合的使名称。
  • migrations:Migrations are
    Django’s way of propagating changes you make to your models (adding
    a field, deleting a model, etc.) into your database schema. They’re
    designed to be mostly automatic, but you’ll need to know when to
    make migrations, when to run them, and the common problems you might
    run into.
  • models.py:这是应用的数据模型。
  • test.py:在这文件中得以编写测试文档来测试所建之应用。
  • views.py:用户保存应各种求的函数或者类。如果编写的是函数,则名为函数的视图文件。当然也得就此任何的文件名称,只不过在引入相应的函数或者类时,要顾名称的正确,views.py是我们习惯用的公文称。

db.sqlite3 这是一个默认是数据库

网站配置 settings.py

  • DEBUG:其值为True或False。在开进程遭到,需要装成Flase,在测试时,Django能够亮详细的报错信息—这是“开发模式”。如果项目安排及确实使对外披露之服务器上,我们叫“生产条件”,必须用该价修改为False,从而避免暴露项目之里信息。
  • INSTALLED_APPS:所有的型,只有写以此才生效。
  • DATABASES:配置数据库的。参阅:http://www.cnblogs.com/0bug/p/8011260.html
  • LANGUAGE_CODE:设置项目的语言,一般不待改,如果未汉语,则设置为LANGUAGE_CODE=’zh-hans'(注意勿是’zh-cn’)。
  • TIME_ZONE:设置时区,通常用东八区,设置也”Asia/Shanghai”

 

网站地图xml地图