作为一个3年python工作者,感觉很惭愧.python强项在人工智能,然而偶的工作确跟人工只能毫不相干,一直与django打交道.
django是python的大型后台框架,功能还是很强大的
orm
orm全程是Object-RelationMapping,对象关系映射,有一个对象(Modal)对应一张数据表.一个属性名对应一个字段,一个类实例对应一条记录.他可以让你专注代码编写,而不用去管数据库的创建,因为orm给你提供了makemigrations和migrate两个命令
你只要敲敲命令,轻轻松松创建数据表,当然偶尔也会出现问题.对于表字段属性也涵盖了很多,像主键,索引,备注,外键等都有.关于外键要说一下,平常大家数据库都不会建实际的外键关系,所以在orm中大家也可以通过配置,删除在数据库中的外键关系.但是orm中你需要有这个外键关系,有了这个关系,你才能实现连表查询呀.
既然能轻松建数据表,那大家不需要来关心数据库类型了,也是通过配置来实现的.
对于增删查改,基本上你能想到的数据库操作,他都能实现,如果有不能实现的,他还给你提供了原生sql语句查询的.其实,orm的查询,是django自己把你的查询转化成了对应数据库类型的原生sql.有这种转化,必然会损耗部分机器性能.所以要不要用orm还是要视情况而定.
mvt模式
mvt模式,是偶不太喜欢模式,model-view-template,他的模板(template)在这个前后端分离的大环境下显的很鸡肋.没有Controller,总感觉怪怪的,你要自己写吧,跟人家这模式又不相符,你要不写吧,代码就会乱乱的.抓耳挠腮~~
小插曲
之前大家公司是没有前后端分离的,偶见过大家的后端大神,用xadmin,写前端的.不过偶没用过.偶还是喜欢用HTML.哈哈,这可以看出,django是不是有点强,虽然有的强没啥用.
总结:
django的功能,肯定不止这一点.偶只列一些平常用的比较多的,其余功能可以取官网查询,现在应该是2.x版本了,有几个版本改动还是挺大的.