安装

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/,就会看到如下图所示的结果。

创建应用

项目已经创建好了,网站也有了,接下来要实现网站的具体功能,在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"

Django安装与介绍的更多相关文章

  1. Django安装以及介绍

    安装django说先需要安装python环境,因为他是依赖于python环境运行的 最好再安装pycharm,一款强大的开发工具,里面有各种开发工具的集成 在Windows先安装: 首先进入cmd命令 ...

  2. Django安装和介绍

    在CMD和pycharm的安装方法. 先说CMD的安装方法 1,使用pip3 install django 2,进入c:python\Scripts 3,django-admin.exe startp ...

  3. Django框架的前奏(安装及介绍)

    几个重要的概念: web的本质: 浏览器中输入网址敲回车发生了几件事? 1.浏览器向服务端发送请求 2.服务端接收请求 3.服务端返回相应的响应 4.浏览器接收响应  根据特定的规则渲染页面展示给用户 ...

  4. Django学习(一) Django安装配置

    上一节介绍了如何搭建Python的开发环境,这次介绍一下如何搭建Django的开发环境. 第一.下载Django Django跟Python的版本对应 Django version Python ve ...

  5. django安装配置及测试

    django安装之前我们假设你已经安装了python,和mysql(不是必须的):(如果没有google一下挺简单不介绍了)下面直接介绍django的安装配置:到下面连接可以下载www.djangop ...

  6. Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  7. Django项目结构介绍

    官网下载网址:https://www.djangoproject.com/download/ 安装(安装最新LTS版): pip3 install django==2.0.7 创建一个django项目 ...

  8. (转载)Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  9. Django学习笔记(http协议与django安装)

    Django入门 HTTP协议 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网(WWW:World Wide Web )服务器与本地浏览器 ...

随机推荐

  1. java并发编程:线程安全管理类--原子操作类--AtomicReferenceFieldUpdater<T,V>

    1.类 AtomicReferenceFieldUpdater<T,V> public abstract class AtomicReferenceFieldUpdater<T,V& ...

  2. TCP为什么是三次握手,为什么不是两次或者四次 && TCP四次挥手

    这是一个很有意思的问题~ 首先,我们要知道TCP是全双工的,即客户端在给服务器端发送信息的同时,服务器端也可以给客户端发送信息.而半双工的意思是A可以给B发,B也可以给A发,但是A在给B发的时候,B不 ...

  3. onmouseover和onmouseout的bug

    脑子不好用了,一点东西要看几遍才能记住,学过的东西也要好几遍,悲哀. 习惯了jquery的hover,或者看过hover源码,或者是正美的<框架设计>,onmouseover和onmous ...

  4. 51nod1513

    题解: 更据题意,在树上深度为没一个数的都放在一起,要用的时候二分出来,看结果 用c++的数据结构 代码: #include<bits/stdc++.h> using namespace ...

  5. selenium(二)查找定位目标 ID XPATH CSS 操作目标

    简介: 我们只打开一个页面是没有什么意义的. 尽管你可以get很多次. selenium可以做的更多,比如找到百度的搜索框,输入我们要搜索的内容,再用鼠标点击搜索按钮,再把搜索结果提取出来…… 这篇文 ...

  6. 【Grails 代理Proxy设置】部署Grails遇到Error Resolve error obtaining dependencies:错误,及解决方法

    最近在使用Grails,一开始使用3.0.2版本,一直包nullpointer错误,后来使用了2.5.0版本,可以创建工程,但是在进入到工程目录后,再执行grails程序,报错了,步骤如下: 1. g ...

  7. Java实现交换两个String

    在Java中我们所使用的实例变量其实都是一个引用,所以如果要求实现一个swap(String A, String B)这种函数时无法实现的,因为在类方法的定义中是先对行参进行地址传递,然后对形参修改, ...

  8. Css的优先权问题

    看这篇文章之前,对这个问题一直没深入研究,导致有时候遇到一些问题会很麻烦,看到这篇文章让我茅塞顿开,转帖回来保存一下以便今后复习. 发现很多朋友对 CSS 的优先权不甚了解,规则很简单.需要说明的一点 ...

  9. matlab reshape()、full()

    一.reshape() 对于这个函数,就是重构矩阵. (1)要求:重构前后的矩阵元素个数一致.如3*4矩阵可以重构成2*6,2*3*2等. (2)重构方法:先按列将矩阵转换为向量,然后在向量的基础之上 ...

  10. 获奖感言和C语言的学习心得

    获奖感言和C语言的学习心得 自我介绍: 大家好,我的名字叫袁忠,我来自湖南,今年快19岁了,现在是大学一年级,我平时喜欢跑步.打羽毛球,我也喜欢学算法与数学,以及喜欢看一些与计算机有关的书籍,每次我学 ...