廿肆-Django 建设 WebApp 管理 MongoDB 数据库内容

1. 缘起

前期爬了很多数据,我们需要有一个交互界面去判断爬取的数据归属情绪是哪种。
因为程序是部署在云服务器上的,所以当然就是建立一个 WebApp 去交互,而我前期又帮公司做过一个 Django 项目的,所以我觉得这个可以直接拿来用。

2. Django

当然我们必须得有文档:
Django包
有了文档我们就无所不能了!
这个我也是直接拿之前做好的,就没什么好说了。

3. MongoDB 链接事宜

前期在公司是用 MySql 的,所以底层链接全部要做过,这个时候发现两个比较重要的问题。

3.1 MongoDB 根据 ID 查找

我也不懂为什么这么难,其实 MongoDBJS 才是绝配,可既然无聊如我也只能用 Python 做。
Python 根据 MongoDB 记录的 _id 查找是无法很方便的直接查找的,需要 import 一个 包并进行转换

from bson.objectid import ObjectId
articles.find_one({'_id':ObjectId('50f0d76347f4ec148890ef1e')})

python mongodb根据_id查询数据
唉呀,好麻烦啊。

3.2 Python 导入 MongoDB 时间问题

我觉得 Python 真的是很麻烦,说它是脚本语言,可是一点都不友好,连个日期都要转来转去:
Python 插入 MongoDB 时间

import pymongo
from dateutil import parser
dateStr = "2019-05-14 01:11:11"
myDatetime = parser.parse(dateStr)
client = pymongo.MongoClient(host="127.0.0.1", port=27017)
db = client["test"]
db.ceshi.insert({"date": myDatetime})
client.close()

4. Nginx 反向代理

这个我深有体会,之前的云服务器开了4个 NodeJS、一个 JSP、一个 RServe 服务,都是用 Nginx反向代理的。
但问题是,我已经忘了怎么配置了。
所以只能找小文章:
Nginx安装及配置反向代理
其实最麻烦的我觉得是配各种二级路径的时候,Nginx 功能是很强大,但是同时也很麻烦。

5. Supervisor

这个我今天早上已经专门写了个文章吐槽了:
廿叁-Supervisor 配置 Django 被 Sqlite3 在 LD_LIBRARY_PATH 上坑了
我能怎么样?我也很绝望哦。

6. 技术混搭的弊端

这次我深刻的体会到,之前面试所说的:

一个项目组使用不同的技术是一个噩梦,会造成很多灾难性的后果。

的确,以前总是觉得能用就行,但当你不同的技术来做一件事情时,工作量暴增、可维护性下降、重复写相同功能
例如数据库一直在用 MySQL 的,如果是转个 SQLServer 还算好,改一下接口和 SQL 片段就可以。忽然转 MongoDB 或者其他非关系型数据库的,连逻辑也要改动。
还有前期很多库都是使用 NodeJS 写的,一转 Python 连重用都不行了,还得重新写。

7.版本迭代的可怕之处

其实以前不懂为什么说,换了一个人、版本更新宁愿 重写 也不要在原版本上 修改
世界在进步,时代在变革。
就像原先的版本你的库还是用函数的形式给其他人应用的,忽然间改成类的形式,完全就乱套了。
也有封装不好的原因,但带来的一个深切的教训就是。
除非是试验项目,不然尽量思考清楚再开始做。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352

推荐阅读更多精彩内容

  • 前言 《Django开发简单Blog系统》系列中,我们已经完成了一个迷你Web项目。那么,怎么把这个项目发布到线上...
    VoidKing阅读 2,291评论 0 4
  • Mongodb数据库 课程介绍 Ø 数据库概述(了解) Ø NoSQL和MongoDB简介(了解) Ø Mongo...
    致自己_cb38阅读 1,755评论 0 4
  • 我希望你好好的 永远对生活 充满热情 我希望你整天乐哈哈的 春天可以去看燕子衔泥筑巢 夏天可以在田野里摘野花放风筝...
    凉白开1998阅读 106评论 0 1
  • 星星乐园的家长们: 大家好! 愉快、充实的第九周匆匆而过。 这一周里,我们整个大名县都在忙...
    大名县实验小学杨瑞霞阅读 1,052评论 0 5
  • 你有过迷茫吗? 这茫茫人海中的我们,如同浩瀚星空中的一员,虽发光,但亮度却不同。有的人是最耀眼的,有的人是最不起眼...
    是么老师阅读 248评论 0 3