Django 创建web项目之HelloWorld
Django、Flask、Tornado并称为python WEB三大框架。Diango是一个开源的web应用框架,具有开发速度快的特点。同时因为过度封装,具有性能低的特点。
创建Django项目,启动
首先,利用anaconda创建出独立的沙箱环境
- conda create -n DjangoPath python=3.5.2 #DjangoPath为沙箱名, python=3.5.2 指定python版本
激活沙箱环境
- activate DiangoPath
安装Django
- pip install django==2.1.8 # 指定版本为2.1.8
安装成功后,可以查看Django的版本
创建第一个Django项目,项目结构如图所示(ps:忽略views后来自己创建的)
- django-admin startproject ArticleBlog # ArticleBlog 为项目名
- |-- mysite/ # 项目文件夹[根目录]
- |-- mysite/ # 根项目(主项目)
- |-- __init__.py # 模块文件
- |-- urls.py # 路由文件[url地址和处理函数进行对应]
- |-- settings.py # 项目的设置配置文件
- |-- wsgi.py # 实现了wsgi网关协议的模块
- |-- manage.py # 项目的命令管理模块[不需要修改,直接使用]
- 官方介绍:https://docs.djangoproject.com/zh-hans/2.1/intro/tutorial01/
- 最外层的:file: mysite/ 根目录只是你项目的容器, Django 不关心它的名字,你可以将它重命名为任何你喜欢的名字。
- manage.py: 一个让你用各种方式管理 Django 项目的命令行工具。
- 里面一层的 mysite/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python 包名。 (比如 mysite.urls).
- mysite/__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。
- mysite/settings.py:Django 项目的配置文件。
- mysite/urls.py:Django 项目的 URL 声明,就像你网站的“目录”。
- mysite/wsgi.py:作为你的项目的运行在 WSGI 兼容的Web服务器上的入口。
启动项目,可以通过命令或者pycharm启动
命令启动, 输入如下命令启动项目,ctrl+C 退出
- 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 同级,代码如下
- from django.http import HttpResponse
- def index(request):
- return HttpResponse("<h1 style='color:red'>hello world</h1>")
在urls.py 中添加代码,
- from ArticleBlog.views import *
- urlpatterns = [
- path('admin/', admin.site.urls),
- path('index/', index),
- ]
完整如图,后面的22-25行,暂时不要加
然后就可以通过http://127.0.0.1:8000/index/访问,效果图如下
搭建淘宝手机接口返回手机信息网页
淘宝接口地址为 https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=手机号
在views文件中加入
- def getphone(response, phone):
- data = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())# 格式化当前时间
- url = 'https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=' + phone
- resu = requests.get(url=url).text # 请求地址拿到内容
- result = re.findall("(\w+):'([^']+)", resu)# 正则匹配键值对
- dict = {k:v for k, v in result} # 构造字典
- return HttpResponse("<h1 style='color:red'>当前时间为:{t}</h1><p style='color:#00FF00;font-size:20px'>{dict}</p>".format(dict=dict,t=data))
在urls.py加入
- 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的值
- ALLOWED_HOSTS = ["*"]
设置后访问成功
Django 创建web项目之HelloWorld的更多相关文章
- MyEclipse创建Web项目入门指南
MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 本教程将指导您创建和部署简单的Hello World Web项目.在本教程中,您将学习如何: 创建一个 ...
- maven命令行创建web项目报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils
早上一上班就想新建一个web项目玩玩,没想到一敲命令创建就失败了,真是出师不利.各种折腾无果,当然我也可以用eclipse直接创建的,就是不甘心被这破问题给耍了.刚刚才发现问题原因,这个结果我也是醉了 ...
- 【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 ...
- eclipse中Maven创建WEB项目
刚刚学到Maven的时候总是容易忽视到一些创建Maven项目是的步骤, 这里记录笔者熟悉一种,直接创建Maven Project 下面开始吧--- 选择web-app,没得说,然后那些groupID ...
- Intellij IDEA 创建Web项目并在Tomcat中部署运行(不使用maven)【转载】
原文链接:http://www.thinksaas.cn/topics/0/350/350000.html 一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选 ...
- Maven学习总结(七)——eclipse中使用Maven创建Web项目
一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示:
- Maven——eclipse中使用Maven创建Web项目
原文:http://www.cnblogs.com/xdp-gacl/p/4054814.html 一.创建Web项目 1.1 选择建立Maven Project 选择File -> New - ...
- Intellij IDEA 创建Web项目并在Tomcat中部署运行
一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module name 处输入项目名,点击Next 3.勾选 Web Applica ...
- Intellij Idea 创建Web项目入门(一)
相关软件: Intellij Idea14:http://pan.baidu.com/s/1nu16VyD JDK7:http://pan.baidu.com/s/1dEstJ5f Tomcat(ap ...
随机推荐
- UVALive-3722 留个坑,为什么费马小定理求逆元不对??
#include <iostream> #include <cstdlib> #include <queue> #include <algorithm> ...
- day1-字符串、列表
字符串操作: name = "Wills Qian" # 创建字符串变量 print(len(name)) # 打印字符串长度 print(name[0]) # 提取第一个字符W ...
- centos7 搭建 php7 + nginx (1)
前言 曾今,写过几篇类似的文章,但是发现几个月后,自己回头再看的时候,有种支离破碎的感觉.自己写的并不全,所以今天打算写一篇比较详细的文档.争取下次环境的减的时候,只需要拷贝复制粘贴即可完成环境搭建. ...
- c语言学习笔记 - 二进制文件
在进行文件操作的时候,有时候是用文本的形式存在文件里面,例如用 fprintf(fp,"%d",123) 存一个数据123,实际的存储是已1,2,3这3个ASCII码存入,打开文件 ...
- 深入浅出Mybatis系列(六)---objectFactory、plugins、mappers简介与配置[转]
上篇文章<深入浅出Mybatis系列(五)---TypeHandler简介及配置(mybatis源码篇)>简单看了一下TypeHandler, 本次将结束对于mybatis的配置文件的学习 ...
- C++系列作业
1.编写一个完整的程序,实现功能:向用户提问“现在正在下雨吗?”,提示用户输入Y或N.若输入为Y,显示“现在正在下雨.”:若输入为N,显示“现在没有下雨”:否则继续提问“现在正在下雨吗?” #incl ...
- windows环境下运行Elasticsearch
1.Elasticsearch下载地址:https://github.com/medcl/elasticsearch-rtf 直接下载ZIP包: 2.配置JAVA环境 jdk64位地址:jdk-win ...
- js去除空格或所有空格
function trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } /***is_global 设置"g&q ...
- mvvmlight下passwordBox绑定的解决方法
在做公司的项目中,用到MVVMLight框架,需要做登陆注册的功能模块,但是在wpf中passwordBox没有内置绑定功能,因为出于安全的考虑.但是,博主又非常想要契合mvvm思想,一定要passw ...
- 可怜的baidu,可怜的音库
baidu词典中用的中文音库竟然全都是汉典的中文音库 真可怜,baidu这么大个公司竟然连着1250个发音都懒得录 汉典的音库布都是同一格式,导致一部分音频文件MCI函数无法播放 真他妈可 ...