10步写了个Django网站,正经网站···
Django做网站只要10步,真的只有10步,不信?咱们来数数……
今天主要讲解用Pycharm编辑器搭建网站,网站功能是 实现在局域网中快速传递大文件! 比如:同事要给你个1G的文件,你丢一个网站链接给他。他上传后,文件就在你电脑啦!演示效果如下动图:从电脑F磁盘通过浏览器上传,在D盘出现文件,这里浏览器上传文件可以在其他任意电脑上,上传文件将存于你的D盘!
安装Pycharm专业版
注意Pycharm需要安装 专业版 ,文末可获取 Pycharm专业版软件 和 激活方法及文件 !
Django网站搭建
第一步
Pycharm打开后,新建项目:点击左上角File文件——New Project创建项目弹出方框,即第二步中的图示。
第二步
创建项目内容,点击左边 Django ,在上方 Locattion 中输入项目地址+项目名称。图中项目地址为:" E:\PyCharm Project "项目名称为" Decrypt_Test ",用""隔开!点击 "ProjectInterpreter:Python3.7" ,会展开选项如下图。选择" Existing interpreter "(意思是已存在的解释器)在Interpreter中输入Python环境所在地址+python.exe。可以手工输入,也可以用点击右边"三个点"控件选择文件路径。最后点击Create创建项目。
也可以在展开的 "ProjectInterpreter:Python3.7" 中选择New environment using,这个是默认选择的,为每个项目单独建立一个虚拟环境。新手建议选择此项,节省操作步骤!
注意安装Pycharm前需要事先安装Python环境,如果不知道安装的小伙伴可以参照 **想学Python不知如何入门,教你! ** 文章下半段Python环境安装教程。
第三步
第二步创建完成项目后,会弹出如下对话框。选择 Open in current window ,点击 OK
第四步
点击OK后,会进入到刚才创建的项目,如下图。默认打开了settings.py和urls.py文件,对应的就是左侧文件。
点击界面左下角图标,选择Terminal,并在光标出输入 python manage.py startapp decrypt,按enter结束后,会在项目左侧看见新增了一个文件夹,如下图2:
第五步
在settings.py中的找到 INSTALLED_APPS ,在中括号内新增 'decrypt.apps.DecryptConfig', 表示注册App。如下图:
在settings.py中的找到" ALLOWED_HOSTS ",在中括号内写入 "*" ,代码任意IP地址可访问你的网站。
第六步
在urls.py中的找urlpatterns,中括号中增加 path('decrypt/,decrypt'),
第七步
双击左侧views.py文件打开它,写入如下内容:
from django.shortcuts import render,redirect
# Create your views here.
def decrypt(request):
"""解密文件"""
if request.method == "GET":
return render(request, "decrypt.html")
else:
# 获取文件
pic = request.FILES["pic"]
# 创建一个文件
save_path = "D:/%s" % pic.name
with open(save_path, "wb") as f:
# 获取上传文件的内容并写入打开的文件
for content in pic.chunks():
f.write(content)
# 返回
return redirect("/decrypt")
# return JsonResponse({"msg": "OK!"})
第八步
在左侧templates文件夹中新建一个decrypt.html文件,双击左侧decrypt.html文件打开它,写入如下内容:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>解密亿赛通文件</title>
</head>
<body>
<h4>文件上传</h4>
<form action="/decrypt/" enctype="multipart/form-data" method="post">
{% csrf_token %}
上传文件:<br>
<input type="file" name="pic"> <br>
<input type="submit" value="上传并解密">
</form>
</body>
</html>
第九步
在Terminal中输入python manage.py runserver 172.16.6.224:8000,注意,此处的172.16.6.224:8000是我的电脑的IP地址,你需要 改成你电脑的IP地址,而且回车键运行,出现如下图2所示代表成功运行了网站!,在浏览器中输入:"http://172.16.6.224:8000/decrypt/" ,注意这里的IP地址改成你自己的IP地址。赶快把网站地址发给你的小伙伴,让他们给你传数据吧!
如果文章对你有帮助,记得点赞+关注+收藏!
获取软件方式
关注公众号【Python利剑】,回复" Pycharm "获取软件和激活文件
10步写了个Django网站,正经网站···的更多相关文章
- 如何一步一步用DDD设计一个电商网站(十四)—— 回顾与总结
本系列所有文章 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念 如何一步一步用DDD设计一个电商网站(二)—— 项目架构 如何一步一步用DDD设计一个电商网站(三)—— 初涉核心域 如 ...
- 10种JavaScript特效实例让你的网站更吸引人
我们有三种主要的方法(从难到易):自己动手写脚本;使用类似于jQuery和mooTools的JavaScript框架(可以让编写代码变得更容易些);使用能工作于现有的JavaScript框架下的提前预 ...
- #使用abp框架与vue一步一步写我是月老的小工具(2) 后台搭建初体验
#使用abp框架与vue一步一步写我是月老的小工具(2) 后台搭建初体验 一.续上前言 关于这个小玩意的产品思考,假设我暂时把他叫我是月老热心人 这是一个没有中心的关系链,每个人进入以后都是以自己为中 ...
- 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成
阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...
- 如何一步一步用DDD设计一个电商网站(五)—— 停下脚步,重新出发
阅读目录 前言 单元测试 纠正错误,重新出发 结语 一.前言 实际编码已经写了2篇了,在这过程中非常感谢有听到观点不同的声音,借着这个契机,今天这篇就把大家提出的建议一个个的过一遍,重新整理,重新出发 ...
- 如何一步一步用DDD设计一个电商网站(四)—— 把商品卖给用户
阅读目录 前言 怎么卖 领域服务的使用 回到现实 结语 一.前言 上篇中我们讲述了“把商品卖给用户”中的商品和用户的初步设计.现在把剩余的“卖”这个动作给做了.这里提醒一下,正常情况下,我们的每一步业 ...
- 如何一步一步用DDD设计一个电商网站(三)—— 初涉核心域
一.前言 结合我们本次系列的第一篇博文中提到的上下文映射图(传送门:如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念),得知我们这个电商网站的核心域就是销售子域.因为电子商务是以信息网络 ...
- 《一步一步写嵌入式操作系统》读书笔记1—Skyeye介绍、安装和HelloWorld
2013-11-14 最近在看<一步一步写嵌入式操作系统>,感觉此书甚好,许多地方讲得很清楚.可操作性强,计划边读边实践边写笔记,希望能够逐步熟悉嵌入式操作系统底层的东西,最终剪裁出一套实 ...
- 如何一步一步用DDD设计一个电商网站(十二)—— 提交并生成订单
阅读目录 前言 解决数据一致性的方案 回到DDD 设计 实现 结语 一.前言 之前的十一篇把用户购买商品并提交订单整个流程上的中间环节都过了一遍.现在来到了这最后一个环节,提交订单.单从业务上看,这个 ...
随机推荐
- 学习笔记:四边形不等式优化 DP
定义 & 等价形式 四边形不等式是定义在整数集上的二元函数 \(w(x, y)\). 定义:对于任意 \(a \le b \le c \le d\),满足交叉小于等于包含(即 \(w(a, c ...
- Social Infrastructure Information Systems Division, Hitachi Programming Contest 2020 D题题解
将题意转换为一开始\(t = 0\),第\(i\)个操作是令\(t \leftarrow (a_i + 1) t + (a_i + b_i + 1)\).记\(A_i = a_i + 1, B_i = ...
- Array的简单使用(Boost和STL通用)
目录 目录 介绍 使用 Boost和STL的区别 介绍 本来这一次是想简单介绍一下Boost里面的协程库的使用的,但是Boost.Coroutine已经被废弃了,而Boost.Coroutine2目前 ...
- STL——容器(Set & multiset)的大小
1. set.size(); //返回容器中元素的数目 2. set.empty();//判断容器是否为空 empty() 是由一下代码实现的,可以发现,当长度为0时返回 false,以此判断容器为 ...
- Day5 - 07 函数的参数-参数组合
现在我们学完了位置参数.默认参数.可变参数.关键字参数.命名关键字参数五种参数类型.在Python中定义函数,可以使用这五种参数进行组合.但是参数定义的顺序必须是:必选参数.默认参数.可变参数.命名关 ...
- C#跳过工作日,计算几个工作日之后到期的方法
需求:消费者投诉企业,企业在2个工作日之内做出应答. 分析:1.工作日要刨去周末和法定节假日,而且每年的节假日不一样. 2.消费者可以在任意时间发起投诉,如果在非工作日发起了投诉,那么计算时间应该从工 ...
- matplotlib的学习14-图中图
# 导入pyplot模块 import matplotlib.pyplot as plt # 初始化figure fig = plt.figure() # 创建数据 x = [1, 2, 3, 4, ...
- AWVS批量导入网站(刷漏洞入门)
今天整了一天这个AWVS批量扫描脚本,主要是下了好几个版本的AWVS,都不稳定,一次次删除又一次次安装. 做这件事儿目的就是为了批量刷漏洞,不过弄好之后又不打算刷漏洞了,不太喜欢无脑刷漏洞,没什么意义 ...
- Angular *ngIf length
Angular *ngIf length 在Angular中如何判断*ngIf Arrary的长度? 具体代码如下: result = []; <div class="kt-secti ...
- 用Python写个开心消消乐小游戏
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 提到开心消消乐这款小游戏,相信大家都不陌生,其曾在 2015 年获得过玩家最喜爱的移动单机游戏奖,受 ...