0 django start

一 . 新建项目

  在指定的项目保存目录下执行  

  

$ django-admin startproject mysite

    --- 这将在目录下生成一个mysite 目录,也就是你的这个Django项目的跟目录。它包含了一系列自动生成的跟目录和文件,具备各自专有的用途。

    ---注意:在给项目命名的时候必须避开Django和Python的保留关键字,不如“django” ,"test"等,否则会引起冲突和莫名的错误。对于Mysite的放置位置,不建议放在传统的/var/www 目录下,它会具有一定的数据暴露危险,因此Django建议将项目文件

        放在自定义的目录。

  一个新建项目结构大概如下:

  

mysite/
├── manage.py
└── mysite
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

1 directory, 5 files

各文件和目录解释:

  • 外层的mysite/目录与Django无关,只是你项目的容器,可以任意命名。
  • manage.py:一个命令行工具,用于与Django进行不同方式的交互脚本,非常重要
  • 内层的 mysite/目录是真正的项目文件包裹目录,它的名字是你引用内部文件的包名,例如:mysite.urls
  • mysite/__init__.py:一个定义包的空文件。
  • mysite/settings.py:项目的主配置文件,非常重要!
  • mysite/urls.py:路由文件,所有的任务都是从这里开始分配,相当于Django驱动站点的内容表格,非常重要!
  • mysite/wsgi.py:一个基于WSGI的web服务器进入点,提供底层的网络通信功能,通常不用关心。

 二 、启动开发服务器

   进入mysite 目录执行:

python manage.py runserver

看到下面的提示,这表明Django的开发服务器已经启动,开始提供Web服务了:

Performing system checks...

System check identified no issues (0 silenced).
November 23, 2017 - 03:23:39
Django version 1.11.7, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Django 内部提供了一个用于开法的web服务器,不需要配置一个类似于Ngnix的线上服务器,就能让站点跑起来。  ---- 这是一个由python编写的轻量级别服务器,简单并不安全,不适用与线上环境。

打开浏览器,访问http://127.0.0.1:8000/,你将看到Django的欢迎界面,一切OK!

Django的开发服务器(以后简称服务器)默认运行在内部的8000端口,如果你想指定端口,请在命令中显示给出:

$ python manage.py runserver 8080

修改服务器的ip地址,请按下面的方式运行命令:

$ python manage.py runserver 0.0.0.0:8000

这时,Django将运行在8000端口,整个局域网内都将可以访问站点,而不只是是本机。

注意: Django的开发服务器具有自动重载功能,当你的代码有修改,每隔一段时间服务器将自动更新。但是,有一些例如增加文件的动作,不会触发服务器重载,这时就需要你自己手动重启。

PS:这一步操作也可以在Pycharm里完成。

三 、创建应用(APP)

  app应用 与 project 项目的区别:

  • 一个app实现某个功能,比如博客、公共档案数据库或者简单的投票系统;
  • 一个project是配置文件和多个app的集合,这些app组合成整个站点;
  • 一个project可以包含多个app;
  • 一个app可以属于多个project!

  注: app 的存放位置可以是任意地点,但是通常都将它们放与manage.py脚本同级的目录下,这样方便导入。

  进入mystie 项目目录,确保与manage.py文件处于同一级,执行如下命令。

  

原文地址:https://www.cnblogs.com/liushubao/p/7883647.html