Python里面最强大的web开发框架非Django莫属,当然很多老鸟会跳出来说Flask也是很牛逼的,还有一些高手会喷你说前两个都是菜鸡,天下武功唯快不破fastapi框架才是最强大。关于框架的争论一直都是喋喋不休,没有最好,只有最合适的。
一个刚开始学走路的人,你跟他说你跑步需要穿什么鞋,用什么装备我觉得都是扯淡,合脚就可以。言归正传,我还是觉得Django是最适合小白入门的Python web框架。
现在回想我开始学的时候,到处找资料,很多资料不是太深,就是太长,硬着头皮看完,哈欠直打,看的是云里雾里。没等看完,兴奋的劲头已经折磨耗尽。所以我觉得入门就两个字,一定要 “简单,简单,简单“。
不要整那么多的理论,不要说那么多的大而全的东西,先让我上手再说。好,今天菜鸟哥给大家带来一个10分就可以上手Django的趣味案例,非常适合小白上手,希望看完之后,各位领导来留言区指导工作,每个月留言的同学都送书哦!
00.啥小应用
一个网站,其实涉及到很多知识点,前端,后端,数据库,用户管理,后台控制。今天我们的小app其实就是一个简单的密码生成器Web。
复杂的我们统统不涉及,只有一个前端页面和一个后台路由,包你简单易学,学习就是要由浅入深,循序渐进,等你学会了一个页面的制作,再学多个页面,多个路由就会简单很多。
1.创建工程
首先我们要创建项目,然后创建一个应用。新建一个文件夹比如叫
06.password_generator,然后进入这个文件夹新建项目:
django-admin startproject password_generator
接着我们要创建一个应用: 进入刚才创建的文件夹password_generator
python3 manage.py startapp generator
2.启动项目
然后到我们的工程项目里面,找到settings.py这个文件修改我们的语言设置为zh-hans,表示我们后台的启动都是用中文显示。然后启动我们的项目,因为电脑上的端口8000被其他项目占用了,这里我用了9000端口。
这个时候你打开浏览器,就可以看到Django标志性的小火箭界面了。
然后记得在我们的settings里面把generator加入到我们的应用列表里面。
2.设计路由
我们这个应用只有一个页面,所以路由非常简单,在项目文件的urls里面添加一个路由到我们的应用里面。
增加一个路由,当访问http://127.0.0.1:9000/的时候,就可以映射到generator.urls里面处理。
然后,我们接着增加应用generator的urls.py里面的文件
用户访问的处理都放到我们的views视图里面来处理,我们马上增加一个hello world到视图里面。
好,打完上面的招式,我们算是成功了一小步,成功路由-视图已经完全通过了。我们刷新一下也没就会看到hello world了。
3.增加模版文件
上面房子框架搭建好了,我们需要开始对对房子进行装修设计了,肯定少不了html,css,js这些前端的东西。本案例非常简单。
只涉及到html。我们这应用里面新建templates和stataic文件夹,并在下面分别再建跟我们的应用名字一样的generator文件夹(这一点非常非常重要,否则会出现找不到图片和html)。
然后把我们的漫威的背景图片放到images下面,在templates/generator/ 下面新建一个index.html文件,并且改成上上面的内容。
下面我们的视图就开始跟我们的前端html关联起来了,所以我们去把views里面index的内容改一下:
这个时候再刷新一下我们的主页(注意后天的python3 manage.py runserver 这个终端不能关闭哈),就会看到页面变了。
4.设计我们的主页面
好,我们的主页面已经成功显示出来,下面就是在这个刷完油漆的房子里面开始添置家具,我们主页主要是包括了,一个form表单,表单里面有一个select文本框,4个input的checkout,一个submit的提交按钮和一个最后显示密码输出的文本。
这个时候我们再刷一下页面,我们就看到控件都上页面了。
不过有点丑,我们用户大名鼎鼎的bootstrap来美容一下,于是我们修改了一些页面:
我们在head里面增加了bs3的引入,然后在每个控件上面都增加了css样式 class来美容一下,这时候我们再刷新一下看一下效果:
是不是快大功告成了,但是这个是静态的页面,还没有活起来,我们要给它注入灵魂,所以我们要修改我们的views。
5.修改views增加密码生成功能
密码生成的功能,其实我以前写过这样的脚本,其实非常简单主要是里面random随机函数进行字母的组合,目前我们大部分的密码都要去:
至少有一个大写的子母
至少有一个小写的子母
至少有一个数字
至少有一个其他的符号,比如#%¥这样的
针对这样的需求,利用我们深厚的Python功底,很容易就写好了。代码如下:
代码的逻辑非常简单,我就不赘述了,既然密码生成的算法已经好了,我们只需要跟前端的交互链接即可。修改views里面的index,增加对前端表单的提交的响应。
好了,大功告成了,我们一定迫不及待的看一下效果,码农也只有在程序运行的那一刻才释怀。
点击,我们的Generator password按钮就可以不断的显示密码了,大家可以根据自己的要求在选项里面选择要带大写还是小写,数字和特殊字符的密码。
最后,说两句
应用虽然小,但是扩展其实可以非常多,关键是这样的小应用对小白来说,非常适合提高兴趣和学习的积极性。
好了原创不易,大家看一下这篇只要几分钟,但是我这也是花了4个多小时的功夫,从创意到代码到文案的编写,校验,核对,前后花了很多时间,光图片就用了28张,真心不易,有的时候发发广告,养家糊口,也希望大家理解,希望各位铁粉留言区多多支持一下哈。
如果看文案不过瘾,需要录制视频的,也欢迎在留言区吱一声哈。另外,需要源码,还是老规矩,后台输入:小助手。找他要,备注:哪一篇文章的,原创500篇了,太多了。
推荐阅读:
入门: 最全的零基础学Python的问题 | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径
Django入门: 30分钟!用Django做一个迷你的Todolist!上篇!30分钟!用Django做一个迷你的Todolist!下篇!
量化: 定投基金到底能赚多少钱? | 我用Python对去年800只基金的数据分析
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析| 从万众期待到口碑扑街!唐探3令人失望 | 笑看新倚天屠龙记灯谜答题王 |用Python做个海量小姐姐素描图碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏 | 九宫格 | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!| 再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|
年度爆款文案
点阅读原文,更多好玩Python!