第一个Django项目:HelloWorld
OS:Windows家庭中文版, Python:3.6.3,Django:2.0.3
在前一篇文章中,Django已经顺利安装到了Python中,下面,开发第一个Python项目吧!
1.django-admin命令初探
在安装Django后,django-admin可以用了。此命令位于C:\Python36\Scripts下,django-admin.exe,一个Windows可执行文件。
在命令行输入django-admin即可查看其相关信息,其下有不少子命令,本文用到startproject命令:
django-admin命令的更多内容,还需研究。
2.使用django-admin创建第一个项目
打开命令行,进入创建工程的目录(也可以在创建工程的命令中指定);
执行Django项目创建命令:django-admin.py startproject HelloWorld;
没有提示,HelloWorld项目创建成功!
创建成功后,在当前目录下会出现HelloWorld项目的工程文件夹HelloWorld;
就是这样,工程建立好了!
很简单是吧?第一步当然简单!
那么,各个文件的意义呢?请看参考链接的文章1,里面说的很清楚:
3.启动项目服务器
疑问:这个服务器是单独属于HelloWorld项目呢,还是属于整个Django?可以同时运行多个项目吗?
上一小节介绍了,项目目录下的manage.py是一个命令行工具,在这里,我们需要用它的子命令来启动HelloWorld的服务器。
在命令行输入:python3 manage.py runserver
使用Python3的原因不再多说。
服务器启动后:
上图中提示的“You have 14 unapplied migrations(s)....”的问题尚未解决,需要再研究。
上图倒数第二句提示:Starting development server at http://127.0.0.1:8000/,这表示服务器(准确的说是【开发服务器】,还有什么其它服务器吗?)已经
启动,可以使用http://127.0.0.1:8000/访问了。
在浏览器输入http://127.0.0.1:8000/,回车,可以看到下面的结果:一个默认的Web视图(界面)打开了!说明项目服务器启动成功!
访问页面后的命令行输出:
可以看到,有一些以/statc开头的文件被传送到页面上了,这些文件来自哪里呢?
在检查了settings.py文件里面的static时,发现下面的变量:django.contrib.staticfiles
继续寻找,发现上面的文件的确来自Django安装目录:
继续研究,发现页面是根据工程目录下的view.py生成的,URL规则由urls.py文件判定!
需要说明的是,这个开发服务器的默认端口是8000,可以在启动命令行中更改。
可以使用命令python3 manage.py来查看此命令行工具的使用细节。
查看runserver命令的细节,可以使用python3 manage.py help runserver查看:
4.让页面输出Hello world!
删除项目里面的view.py、urls.py,并重新建立者两个文件,内容如下:
#view.py
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world!") #urls.py
from django.conf.urls import url
from . import view
urlpatterns = [
url('^$', view.hello)
]
重启项目服务器,此时访问页面即可获得我们需要的Hello world!:
此时的命令行输出:
参考链接:
后续研究:怎么建立view.py、url.py等,Django项目的规则刚刚入门而已。
====END====
最后,需要搞清楚Django到底是什么?Django是Web服务器吗?Django为何要和Nginx、Apache配合使用呢?
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,模板T和视图V。(百度百科)
Django是一个基于MVC构造的框架。(百度百科)
Django的主要目的是简便、快速的开发数据库驱动的网站。(百度百科)
Django可以运行在Apache,Nginx上,也可以运行在支持WSGI,FastCGI的服务器上。(百度百科)
下面的文章给出的答案很好,多谢各位网友:
django 作为 web 服务器为什么线上部署的时候要用到 uwsgi 和 nginx 啊
第一个Django项目:HelloWorld的更多相关文章
- Python开发入门与实战2-第一个Django项目
2.第一个Django项目 上一章节我们完成了python,django和数据库等运行环境的安装,现在我们来创建第一个django project吧,迈出使用django开发应用的第一步. 2.1.创 ...
- 第一个Django项目及部署到Sina App Engine
Sina App Engine简称SAE,是个比较好的网站托管平台,目前说是全面免费,其实就是每个人分配很小的资源配额,在一定的使用范围内不用消耗云豆(SAE计费方式),对于个人学习和研究足够了,同类 ...
- 如何创建一个Django项目
Django 软件框架 软件框架是由其中的各个模块组成,每个模块负责特定的功能,模块与模块之间相互协作来完成软件开发. MVC简介 MVC框架的核心思想是:解耦,让不同的代码块之间降低耦合,增强代码的 ...
- 创建第一个Django项目
第一个Django项目 命令行下使用如下命令创建一个名为"mysite"的Django项目: django-admin startproject mysite 这将会在当前位置创建 ...
- Django之真正创建一个django项目
真正创建一个django项目 1 创建Django项目 :new-project 2 创建APP : python manager.py startapp app01 3 setting 配 ...
- 使用pycharm创建自己的第一个django项目
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Project管理.代码跳转.智能提示.自动完成.单元测试.版本控制. ...
- 发布一个Django项目
一.部署环境准备,准备python3和虚拟环境解释器,virtualenvwrapper 1.修改python3的环境变量 PATH=/opt/python36/bin:/usr/local/sbin ...
- 初学者用pycharm创建一个django项目和一个app时需要注意的事项
如何新建一个djiango项目: 1.在pycharm中点击File,选择new project,点击djiango,在右面的Location中将untitile改为你的项目名,其余部分注意见下图: ...
- 基于centos7,python3.7新建第一个Django项目
为了能更好的了解到整个网站的服务情况,需要了解前端,后端之间的联系,这时候就得需要用到Django框架,基于Django自身带的模板,它可以更好的接收用户发出请求,接下来讲解一下新建第一个Django ...
- 创建一个Django项目
创建一个django项目: 1. django-admin startproject student_manage(项目名) 2. cd student_manage python manage.p ...
随机推荐
- 【Cf #502 F】The Neutral Zone
本题把$log$化简之后求得就是每个质数$f$前的系数,求系数并不难,难点在于求出所有的质数. 由于空间限制相当苛刻,$3e8$的$bitset$的内存超限,我们考虑所有的除了$2$和$3$以外的质数 ...
- 20165218 《网络对抗技术》Exp1 逆向及Bof基础
Exp1 逆向及Bof基础 基础知识 1. NOP, JNE, JE, JMP, CMP汇编指令的机器码 指令 机器码 NOP NOP指令即"空指令",在x86的CPU中机器码为0 ...
- Eclipse – Java.Lang.OutOfMemoryError: Java Heap Space(转)
In Eclipse IDE, if your program is consuming a lot of memory (loading big data) like this : List< ...
- bzoj 2453 : 维护队列 带修莫队
2453: 维护队列 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 952 Solved: 432[Submit][Status][Discuss] ...
- bzoj 2178 自适应Simpson积分
#include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #i ...
- 【bzoj2754】【scoi2012】喵星球上的点名
题解们: 1.首先可以被很多暴力给搞过去:我以前也是这样水过去的 2.ac自动机 2.1 抽离fail树 对点名建自动机,建$fail$树的时候只保留询问节点: 对于一个喵,子串==在自动机里匹配到的 ...
- cocoaPods安装、更新第三方库
pod install 换成 pod install --verbose --no-repo-update pod update 换成 pod update --verbose --no-repo-u ...
- 读Bayes' Theorem
Bayes' Theorem定理的原理说明,三个简单的例子来说明用法及一些练习. Bayes' Theorem就是概率问题,论文相对比较好理解,也不必做什么笔记.
- 深入理解Python中的元类(metaclass)
原文 译注:这是一篇在Stack overflow上很热的帖子.提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解.他知道这肯定和自省有关,但仍 ...
- GO_06:GO语言基础之struct
结构struct 1. Go 中的struct与C中的struct非常相似,并且Go没有class 2. 使用 type <Name> struct{} 定义结构,名称遵循可见性规则(即首 ...