面向python的mvc框架
pymvc的Python项目详细描述
PYMVC
版权所有2018 Sileader和Cerussite。
概述
pymvc是一个类似mvc的python服务器端框架。 这个框架用的是烧瓶。
如何
如何安装
pip install pymvc
如何使用
importpymvc# setting: ex1pymvc.settings.database.database="pymmvc_example"# router: ex1. Add route by methodclassTopController(pymvc.Controller):VIEW="top.html"defget(self,**kwargs):passpymvc.add_route("/",TopController)# router: ex2. Add route by decorator@pymvc.route("/users/<id>")classUserController(pymvc.Controller):VIEW="user.html"defget(self,id):returnpymvc.render(id=id)# model: ex1. User manager modelclassUser(pymvc.Model):name=pymvc.StringType()id=pymvc.UniqueIdType(primary=True)if__name__=='__main__':pymvc.app.run()
pymvc.app
是烧瓶实例。
- 设置数据库名称。(使用
pymvc.settings.database.database
属性) - 创建类
- 控制器类
- 模型类
- 向路由器注册控制器类。
- 启动应用程序
- 调用
run()
方法。 - 使用
pymvc.app
作为wsgi应用程序。
- 调用
控制器
控制器类有VIEW
(类变量)和get
、post
、put
和delete
实例方法。
如果要支持get方法,请重写get
方法。
这些函数的默认操作是return abort(404)
。
型号
model类是mongodb的orm(使用pymongo)。 如果继承它,它将创建集合。
集合的数据被指定为类变量。
importpymvcclassOther1(pymvc.Model):passclassModelExample(pymvc.Model):string_data=pymvc.StringType()# stringint_data=pymvc.IntType()# integerfloat_data=pymvc.FloatType()# floatunique_data=pymvc.UniqueIdType()# UUIDforeign_data1=pymvc.ForeignType(Other1)# other collectionforeign_data2=pymvc.ForeignType("Other2")# other collectionclassOther2(pymvc.Model):pass
集合名称是类名的蛇形大小写。(例如,用户:用户,用户信息:用户信息)
模型数据类型
模型数据类型的构造函数参数是primary
和default
。
如果primary
是True
,则此值标记为主键。
default
是默认值。
视图
pymvc添加一些jinja2函数。
function | operation |
---|---|
load_one(model, primary=None, **query) | load one data (using find_one) |
load_many(model, primary=None, **query) | load all data match query and primary data |
model
是必需参数。
primary
是主键值。
键值提示是**query
。
依赖关系
- 烧瓶
- 皮蒙戈
- MongoDB
许可证
apache许可证2.0