Django、Flask、Tornado并称为python WEB三大框架。Diango是一个开源的web应用框架,具有开发速度快的特点。同时因为过度封装,具有性能低的特点。

创建Django项目,启动

首先,利用anaconda创建出独立的沙箱环境

  1. conda create -n DjangoPath python=3.5.2 #DjangoPath为沙箱名, python=3.5.2 指定python版本

激活沙箱环境

  1. activate DiangoPath

 

安装Django

  1. pip install django==2.1.8 # 指定版本为2.1.8

安装成功后,可以查看Django的版本

创建第一个Django项目,项目结构如图所示(ps:忽略views后来自己创建的)

  1. django-admin startproject ArticleBlog # ArticleBlog 为项目名
  1. |-- mysite/ # 项目文件夹[根目录]
  2. |-- mysite/ # 根项目(主项目)
  3. |-- __init__.py # 模块文件
  4. |-- urls.py # 路由文件[url地址和处理函数进行对应]
  5. |-- settings.py # 项目的设置配置文件
  6. |-- wsgi.py # 实现了wsgi网关协议的模块
  7. |-- manage.py # 项目的命令管理模块[不需要修改,直接使用]
  8.  
  9. 官方介绍:https://docs.djangoproject.com/zh-hans/2.1/intro/tutorial01/
  10. 最外层的:file: mysite/ 根目录只是你项目的容器, Django 不关心它的名字,你可以将它重命名为任何你喜欢的名字。
  11. manage.py: 一个让你用各种方式管理 Django 项目的命令行工具。
  12. 里面一层的 mysite/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python 包名。 (比如 mysite.urls).
  13. mysite/__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。
  14. mysite/settings.pyDjango 项目的配置文件。
  15. mysite/urls.pyDjango 项目的 URL 声明,就像你网站的“目录”。
  16. mysite/wsgi.py:作为你的项目的运行在 WSGI 兼容的Web服务器上的入口。

  

启动项目,可以通过命令或者pycharm启动

命令启动, 输入如下命令启动项目,ctrl+C 退出

  1. python manage.py runserver [0.0.0.0][:8000] # 0.0.0.0 代表可以访问次网站的ip,8000为访问端口号

  

通过pycharm启动,打开创建文件的目录,如果如下图所示,项目名前面有Dj即为成功,如果没有需要设置自己的python(装有模块Django)安装的位置,点击三角,即可运行。

运行成功图

访问127.0.0.1:8000,如图所示,即为成功

编写Hello,World程序

创建视图views.py 文件,文件与urls.py 同级,代码如下

  1. from django.http import HttpResponse
  2.  
  3. def index(request):
  4. return HttpResponse("<h1 style='color:red'>hello world</h1>")

在urls.py 中添加代码,

  1. from ArticleBlog.views import *
  2. urlpatterns = [
  3. path('admin/', admin.site.urls),
  4. path('index/', index),
  5. ]

 完整如图,后面的22-25行,暂时不要加

然后就可以通过http://127.0.0.1:8000/index/访问,效果图如下

搭建淘宝手机接口返回手机信息网页

淘宝接口地址为 https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=手机号

在views文件中加入

  1. def getphone(response, phone):
  2. data = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())# 格式化当前时间
  3.  
  4. url = 'https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=' + phone
  5. resu = requests.get(url=url).text # 请求地址拿到内容
  6.  
  7. result = re.findall("(\w+):'([^']+)", resu)# 正则匹配键值对
  8.  
  9. dict = {k:v for k, v in result} # 构造字典
  10. return HttpResponse("<h1 style='color:red'>当前时间为:{t}</h1><p style='color:#00FF00;font-size:20px'>{dict}</p>".format(dict=dict,t=data))

在urls.py加入

  1. re_path(r"^getphone/(?P<phone>\d+)$",getphone)

  

然后就可以通过网址http://127.0.0.1:8000/getphone/15037609692,查询手机信息,运行结果如图

如果想通过其他电脑连接本机ip访问,直接访问http://ip:8000/index/会出现如下错误,可以在settings.py ,修改 ALLOWED_HOSTS的值

  1. ALLOWED_HOSTS = ["*"]

设置后访问成功

 

Django 创建web项目之HelloWorld的更多相关文章

  1. MyEclipse创建Web项目入门指南

    MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 本教程将指导您创建和部署简单的Hello World Web项目.在本教程中,您将学习如何: 创建一个 ...

  2. maven命令行创建web项目报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils

    早上一上班就想新建一个web项目玩玩,没想到一敲命令创建就失败了,真是出师不利.各种折腾无果,当然我也可以用eclipse直接创建的,就是不甘心被这破问题给耍了.刚刚才发现问题原因,这个结果我也是醉了 ...

  3. 【maven】maven创建web项目-pom文件提示web.xml is missing and <failOnMissingWebXml> is set to true

    使用maven创建web项目,选择war类型后,pom文件红叉 提示web.xml is missing and <failOnMissingWebXml> is set to true ...

  4. eclipse中Maven创建WEB项目

    刚刚学到Maven的时候总是容易忽视到一些创建Maven项目是的步骤, 这里记录笔者熟悉一种,直接创建Maven Project 下面开始吧--- 选择web-app,没得说,然后那些groupID ...

  5. Intellij IDEA 创建Web项目并在Tomcat中部署运行(不使用maven)【转载】

    原文链接:http://www.thinksaas.cn/topics/0/350/350000.html 一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选 ...

  6. Maven学习总结(七)——eclipse中使用Maven创建Web项目

    一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示:

  7. Maven——eclipse中使用Maven创建Web项目

    原文:http://www.cnblogs.com/xdp-gacl/p/4054814.html 一.创建Web项目 1.1 选择建立Maven Project 选择File -> New - ...

  8. Intellij IDEA 创建Web项目并在Tomcat中部署运行

      一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module name 处输入项目名,点击Next 3.勾选 Web Applica ...

  9. Intellij Idea 创建Web项目入门(一)

    相关软件: Intellij Idea14:http://pan.baidu.com/s/1nu16VyD JDK7:http://pan.baidu.com/s/1dEstJ5f Tomcat(ap ...

随机推荐

  1. UVALive-3722 留个坑,为什么费马小定理求逆元不对??

    #include <iostream> #include <cstdlib> #include <queue> #include <algorithm> ...

  2. day1-字符串、列表

    字符串操作: name = "Wills Qian" # 创建字符串变量 print(len(name)) # 打印字符串长度 print(name[0]) # 提取第一个字符W ...

  3. centos7 搭建 php7 + nginx (1)

    前言 曾今,写过几篇类似的文章,但是发现几个月后,自己回头再看的时候,有种支离破碎的感觉.自己写的并不全,所以今天打算写一篇比较详细的文档.争取下次环境的减的时候,只需要拷贝复制粘贴即可完成环境搭建. ...

  4. c语言学习笔记 - 二进制文件

    在进行文件操作的时候,有时候是用文本的形式存在文件里面,例如用 fprintf(fp,"%d",123) 存一个数据123,实际的存储是已1,2,3这3个ASCII码存入,打开文件 ...

  5. 深入浅出Mybatis系列(六)---objectFactory、plugins、mappers简介与配置[转]

    上篇文章<深入浅出Mybatis系列(五)---TypeHandler简介及配置(mybatis源码篇)>简单看了一下TypeHandler, 本次将结束对于mybatis的配置文件的学习 ...

  6. C++系列作业

    1.编写一个完整的程序,实现功能:向用户提问“现在正在下雨吗?”,提示用户输入Y或N.若输入为Y,显示“现在正在下雨.”:若输入为N,显示“现在没有下雨”:否则继续提问“现在正在下雨吗?” #incl ...

  7. windows环境下运行Elasticsearch

    1.Elasticsearch下载地址:https://github.com/medcl/elasticsearch-rtf 直接下载ZIP包: 2.配置JAVA环境 jdk64位地址:jdk-win ...

  8. js去除空格或所有空格

    function trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } /***is_global 设置"g&q ...

  9. mvvmlight下passwordBox绑定的解决方法

    在做公司的项目中,用到MVVMLight框架,需要做登陆注册的功能模块,但是在wpf中passwordBox没有内置绑定功能,因为出于安全的考虑.但是,博主又非常想要契合mvvm思想,一定要passw ...

  10. 可怜的baidu,可怜的音库

    baidu词典中用的中文音库竟然全都是汉典的中文音库   真可怜,baidu这么大个公司竟然连着1250个发音都懒得录   汉典的音库布都是同一格式,导致一部分音频文件MCI函数无法播放   真他妈可 ...