创建项目

1. 使用命令行创建项目

如果这是你第一次使用 Django 的话,你需要一些初始化设置。也就是说,你需要用一些自动生成的代码配置一个 Django project —— 即一个 Django 项目实例需要的设置项集合,包括数据库配置、Django 配置和应用程序配置。

打开命令行,cd 到一个你想放置你代码的目录,然后运行以下命令:

django-admin startproject mysite
#mysite是项目名

这行代码将会在当前目录下创建一个 mysite 目录。如果命令失败了,查看 运行django-admin时遇到的问题,可能能给你提供帮助。

避免使用 Python 或 Django 的内部保留字来命名你的项目。具体地说,避免使用像 django (会和 Django 自己产生冲突)或 test (会和 Python 的内置组件产生冲突)这样的名字。
我的代码该放在哪?
如果你曾经是原生 PHP 程序员(没有使用过现代框架),你可能会习惯于把代码放在 Web 服务器的文档根目录(诸如 /var/www)。当使用 Django 时不需要这样做。把所有 Python 代码放在 Web 服务器的根目录不是个好主意,因为这样会有风险。比如会提高人们在网站上看到你的代码的可能性。这不利于网站的安全。
把你的代码放在文档根目录 以外 的某些地方吧,比如 /home/mycode。

让我们看看 startproject 创建了些什么:

mysite/manage.pymysite/__init__.pysettings.pyurls.pywsgi.py

2. 使用 Pycharm 创建项目

file —> new project ---- 选择Django —> 配置路径和项目名称 —> 配置环境(默认用系统环境) ----> 点击create(完成创建)

项目目录介绍

|---mysite # 项目的/目录 |---mysite # 项目目录 |---__init__.py |---settings.py # 配置文件 |---urls.py # 路由系统 ===> url与视图的对应关系 |---wsgi.py # runserver命令就使用wsgiref模块做简单的web server
|---manage.py # 管理文件,是一个工具脚本,#用作项目管理的。以后会使用它执行管理操作

  • wsgi.py(重要部分)
    要了解这个文件的作用, 我们必须明白wsgi 是什么意思
    python 组织制定了 web 服务网关接口(Web Server Gateway Interface) 规范 ,简称wsgi。参考文档 https://www.python.org/dev/peps/pep-3333/
    遵循wsgi规范的 web后端系统, 我们可以理解为 由两个部分组成
    wsgi web server 和 wsgi web application
    它们通常是运行在一个python进程中的两个模块,或者说两个子系统。
    wsgi web server 接受到前端的http请求后,会调用 wsgi web application 的接口( 比如函数或者类方法)方法,由wsgi web application 具体处理该请求。然后再把处理结果返回给 wsgi web server, wsgi web server再返回给前端。

    为什么要搞出两个子系统,这么麻烦呢?
    因为这两个子系统有各自负责的重点。
    wsgi web server 负责 提供高效的http请求处理环境,可以使用多线程、多进程或者协程的机制。
    http 请求发送到 wsgi web server , wsgi web server 分配 线程或者进程或者 轻量级线程(协程),然后在 这些 线程、进程、或者协程里面,去调用执行 wsgi web application 的入口代码。
    wsgi web application 被调用后,负责 处理 业务逻辑。 业务逻辑的处理可能非常复杂, wsgi web application 需要精心的设计来正确处理。
    django是 wsgi web application 的框架,它只有一个简单的单线程 wsgi web server。 供调试时使用。
    产品正式上线运行的时候,通常我们需要高效的 wsgi web server 产品,比如 gunicorn,uwsgi,cherrypy等,结合Django ,组成一个高效的 后端服务。
    所以这个 wsgi.py 就是 提供给wsgi web server调用 的接口文件,里面的变量application对应对象实现了 wsgi入口,供wsgi web server调用 。

- 创建应用

使用命令行模式创建应用
在 Terminal 中输入 python manage.py startapp 应用名:


  • 使用 Pycharm 创建应用

    注意:使用命令行创建的应用,一定要在 settings.py–>INSTALLED_APPS 中加入你的应用名字进行注册, 使用Pycharm创建的应用则不用。 认识应用结构

    这些目录和文件的用处是:
  • 最外层的:file: mysite/ 根目录只是你项目的容器, Django 不关心它的名字,你可以将它重命名为任何你喜欢的名字。
  • manage.py: 一个让你用各种方式管理 Django 项目的命令行工具。你可以阅读 django-admin and
    manage.py 获取所有 manage.py 的细节。
  • 里面一层的 mysite/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python包名。 (比如 mysite.urls).
  • mysite/init.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。如果你是 Python初学者,阅读官方文档中的 更多关于包的知识。
  • mysite/settings.py:Django 项目的配置文件。如果你想知道这个文件是如何工作的,请查看 Django
    settings 了解细节。
  • mysite/urls.py:Django 项目的 URL 声明,就像你网站的“目录”。阅读 URL调度器 文档来获取更多关于 URL的内容。
  • mysite/wsgi.py:作为你的项目的运行在 WSGI 兼容的Web服务器上的入口。阅读 如何使用 WSGI 进行部署了解更多细节。

运行项目

django虽然只是 wsgi web application 的框架,但是它也有一个简单的 wsgi web server。 供调试时使用。
所以也构成一个完整的后端web服务。 本地调试代码的时候,完全可以运行起来。
运行开发web 服务只需要在命令行窗口里面
首先进入到项目根目录 ,比如,我们这里就是 d:\projects\bysms
然后执行如下命令

  1. 使用命令行运行项目:
python manage.py runserver 0.0.0.0:80

注意:要在 manage.py 同级目录执行命令。

这样服务就会被启动。 我们就可以在浏览器访问web服务了。
其中 0.0.0.0:80 是指定 web服务绑定的 IP 地址和端口。
0.0.0.0 表示绑定本机所有的IP地址, 就是可以通过任何一个本机的IP (包括 环回地址 127.0.0.1 ) 都可以访问我们的服务。
80 表示是服务启动在80端口上。
命令行显示如下:

请打开浏览器,地址栏输入 ‘127.0.0.1’ ,就可以看到如下的界面,表示Django服务搭建成功,启动成功。
也可以在地址栏键入Localhost或,168.0.1.100,如果提示以下错误,可以在settings.py文件中保存了 ‘127.0.0.1’ 、 Localhost 、192.168.1.103。

ipconfig查看本地还有那几个可用的地址

  1. Pycharm 启动项目
    点击右上角的绿色的三角按钮。
    如需更改配置信息,请下拉选择 edit configurations,进行配置。

    如下图所示runserver 127.0.0.1:8000

    配置完以上信息之后,直接按 Ctrl+shift+F10 运行一下 manage.py 文件。
    出现如下结果,表示配置成功。

    你刚刚启动的是 Django 自带的用于开发的简易服务器,它是一个用纯 Python 写的轻量级的 Web 服务器。我们将这个服务器内置在 Django 中是为了让你能快速的开发出想要的东西,因为你不需要进行配置生产级别的服务器(比如 Apache)方面的工作,除非你已经准备好投入生产环境了。

现在是个提醒你的好时机:千万不要 将这个服务器用于和生产环境相关的任何地方。这个服务器只是为了开发而设计的。(我们在 Web 框架方面是专家,在 Web 服务器方面并不是。)

现在,服务器正在运行,浏览器访问 https://127.0.0.1:8000/。你将会看到一个“祝贺”页面,随着一只火箭发射,服务器已经运行了。

> 更换端口
>  默认情况下,runserver 命令会将服务器设置为监听本机内部 IP 的 8000 端口。
> 如果你想更换服务器的监听端口,请使用命令行参数。举个例子,下面的命令会使服务器监听 8080 端口:python manage.py runserver 8080
> 如果你想要修改服务器监听的IP,在端口之前输入新的。比如,为了监听所有服务器的公开IP(这你运行 Vagrant 或想要向网络上的其它电脑展示你的成果时很有用),使用:python manage.py runserver 0:80000 是 0.0.0.0 的简写。完整的关于开发服务器的文档可以在 :djamdin:`runserver` 参考文档中找到。
会自动重新加载的服务器 runserver
用于开发的服务器在需要的情况下会对每一次的访问请求重新载入一遍 Python 代码。
所以你不需要为了让修改的代码生效而频繁的重新启动服务器。然而,一些动作,比如添加新文件,
将不会触发自动重新加载,这时你得自己手动重启服务器。

使用pycharm创建Django项目相关推荐

  1. pycharm创建django项目及开发初准备

    文章目录 前言 一.使用pycharm创建django项目 二.初步设置 对文件进行简单说明 设置 app的介绍和创建及设置 app的创建 第一种方式 第二种方式(本质上还是命令,但是更加智能) ap ...

  2. 老鱼Python数据分析——篇十七:使用pycharm创建django项目

    最近把基础的数据爬取和存储都学习完了,开始进行数据的显示,考虑到通用性,还是使用Web方式来显示数据吧. 所以接下来就开始django学习之路,因为django是一个免费并且强大的开源Web框架. 使 ...

  3. (一)使用pycharm创建django项目

    一.打开PyCharm,新建项目 点击创建之后,PyCharm自动帮我们创建一个虚拟环境和安装最新版的Django. 安装成功之后,我们刚才指定的目录下就多出一个mysite文件夹.打开mysite文 ...

  4. pycharm创建django项目linux部署

    大家好,我是烤鸭: pytho部署web项目比java简单一点,虽然springboot内置了tomcat. 环境: pycharm专业版python3.6 1.安装python python下载: ...

  5. 社区版pyCharm创建Django项目

    社区版pycharm功能不完整,无法直接创建django项目,所以我们可以手动创建 1.先安装django,可以在pycharm中安装,也可以使用 pip install Django 安装 2.创建 ...

  6. 使用PyCharm创建Django项目及基本配置

    https://segmentfault.com/a/1190000011576316 pycharm是个很不错的python开发工具,大大缩短了python项目的创建时间以及调试时间 在使用pyth ...

  7. pycharm创建django项目常见问题

    目录 目录 一.debug--TypeError: unsupported operand type(s) for /: 'str' and 'str',分析与解决 二.python点击run或者de ...

  8. pycharm创建django项目界面解释

  9. pycharm里创建django项目竟然没有django选项

    首先,我当时出现的问题是newproject创建的时候没有django的选项,查了半天发现我安装的pycharm是社区版本 目前我知道的有俩种方法 方法一:安装专业版 注册码 官网网址 :PyChar ...

  10. Django讲课笔记03:创建Django项目

    文章目录 零.本讲学习目标 一.课程导入 (一)Web框架 (二)WSGI 二.新课讲授 (一)使用内置指令创建Django项目 1.主要文件 (1)manage.py (2)init.py (3)a ...

最新文章

  1. suse 12sp1 oracle 11g r2 时出现错误 调用/sysman/lib/ins_emagent.mk的目标nmo时出错
  2. JavaScript的写类方式(4)——转
  3. 56岁潘石屹下定决心学Python,60多岁程序语言之父们还在敲代码,你还敢懈怠吗?...
  4. js复制网站文字追加网站来源,网站版权
  5. c语言的编译环境出错怎么办,编译是通过,连接时出错,怎么办
  6. 海量数据处理利器greenplum——初识
  7. Java操作Kafka创建Topic、Producer、Consumer
  8. linux oa系统搭建,linux版OA系统的安装配置
  9. 追MM与23种设计模式
  10. 003 第一个Python程序
  11. 下载网页中的html5视频之手动方法
  12. Cheat Enginee(CE)自带教程使用指南
  13. 下行文格式图片_下行文标准模版[2]
  14. python分秒换算_如何将度分秒转换为度分
  15. win10电源设置选项无效--高级电源选项
  16. word树状分支图_在word中做树状图的方法步骤详解
  17. Android——给button添加图片
  18. 看各路单词APP不顺手 索性自己写一个背单词系统
  19. GemFire 异步写和同步读
  20. 自然语言处理研究方向--文本相似度论文合集(不断更新)

热门文章

  1. 今日头条 mysql_今日头条这么牛逼,用了什么技术?
  2. SSO单点登录原理详解(从入门到精通)
  3. [渝粤教育] 周口师范学院 大学计算机基础 参考 资料
  4. 信用卡分期年化利率计算方法
  5. 部署calico网络的k8s集群
  6. Winform支付宝扫码支付
  7. 详解电子名片不一样的展示推广功能
  8. JS调用OCX控件过程
  9. 使用Spring-data-jpa修改数据后,查询到脏数据
  10. java 生成jni_Javah生成JNI头文件