今天跟大家聊聊我折腾的“王白”项目,别想歪了,不是人名,是一个我瞎起的名字,灵感来源于前几天看武侠剧,里面有个角色叫王白,感觉挺顺口就拿来用了。
事情是这样的,最近在家闲着没事,就想着搞点事情做做,不能白白浪费时间嘛正好手头有个吃灰的树莓派,就寻思着能不能利用起来,搞个小项目玩玩。想来想去,决定做一个简单的个人知识管理系统,方便自己记录一些学习笔记、生活琐事之类的。
我得把树莓派系统搞定。之前用过几次,所以还算熟悉。直接去官网下载了最新的Raspberry Pi OS,然后用SD卡烧录工具刷进去。插上显示器、键盘鼠标,开机!整个过程还算顺利,没遇到什么大坑。
系统装好后,就开始折腾环境。因为我打算用Python来写后端,所以第一步就是安装Python和pip。这个也很简单,直接用apt命令:
sudo apt update
sudo apt install python3 python3-pip
装完Python,就开始安装一些常用的Python库,比如Flask(做web框架)、requests(用来请求接口)、beautifulsoup4(用来解析HTML)等等。
pip3 install Flask requests beautifulsoup4
就是重头戏了——写代码!
我先用Flask搭建了一个简单的web服务器,然后定义了几个API接口,用来实现增删改查的功能。一开始写得很粗糙,就是能跑就行。
比如,新增一篇笔记的接口:
def add_note(): title = *('title') content = *('content') # ... 存入数据库 ... return 'success'@*('/note/add', methods=['POST'])
然后,我用HTML+CSS+JavaScript写了一个简单的前端页面,用来和后端API交互。前端这块我不太擅长,所以就找了一些现成的模板,然后稍微改了改。
前端页面主要实现了几个功能:
- 可以新建笔记,填写标题和内容。
- 可以查看所有笔记的列表。
- 可以点击笔记标题,查看笔记的详细内容。
- 可以编辑和删除笔记。
写完代码,就开始测试。一开始bug一大堆,各种奇奇怪怪的问题。比如,数据库连接不上、前端页面显示错乱、API接口返回错误等等。
我就一个一个地debug,遇到不会的就去网上搜,或者问朋友。搞了好几天,总算是把大部分bug都解决了。
测试得差不多了,就把代码部署到树莓派上。因为树莓派的性能比较弱,所以我用gunicorn来运行Flask应用,并用Nginx做反向代理。
sudo apt install gunicorn nginx
配置好gunicorn和Nginx,重启服务,然后就可以通过浏览器访问了。
整个“王白”项目,我大概花了一个星期左右的时间。虽然功能很简单,界面也很简陋,但是对我来说,也是一个不小的挑战。
通过这个项目,我不仅复习了Python和Flask的知识,还学到了一些新的东西,比如gunicorn和Nginx的用法。
最重要的是,我体验到了从零开始做一个项目的乐趣。看着自己的代码一步一步地跑起来,感觉特别有成就感。
这个项目还有很多可以改进的地方。比如:
- 可以增加用户认证功能,保护数据的安全性。
- 可以优化前端界面,让用户体验更
- 可以增加全文搜索功能,方便查找笔记。
- 可以把笔记同步到云端,实现多设备同步。
以后有时间,我会继续完善这个项目,让它变得更加实用。
这回“王白”项目,是一次很有意义的实践。它不仅让我巩固了技术知识,还让我体验到了开发的乐趣。以后我会继续努力,多做一些有意思的项目,不断提升自己的技术水平。
感谢大家耐心看完我的分享!希望对你们有所帮助!
还没有评论,来说两句吧...