码迷,mamicode.com
首页 > 其他好文 > 详细

Flask-Restless初步了解

时间:2016-01-14 23:53:51      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:

Flask-Restless是Flask框架的一个扩展库
1. 功能介绍
     通过使用SQLAlchemy或Flask-SQLAlchemy框架定义的数据库模型,提供一个简单的ReSTful APIs产生器。(直译比较绕)
简单来说,你可以使用本框架产生各种机遇ReSTful规范的的HTTP服务器端接口(GET POST等)。往前推就是,你需要使用
SQLAlchemy或Flask-SQLAlchemy框架定义一个数据模型,然后以这个数据模型为基础,生成ReSTful APIs。
 
2.下载方法
     pip install Flask-Restless
 
3.使用例子
 
 1 import flask
 2 import flask.ext.sqlalchemy
 3 import flask.ext.restless
 4  
 5 # 创建Flask应用和Flask-SQLAlchemy对象
 6 app = flask.Flask(__name__)
 7 app.config[DEBUG] = True
 8 app.config[SQLALCHEMY_DATABASE_URI] = sqlite:////tmp/test.db
 9 db = flask.ext.sqlalchemy.SQLAlchemy(app)
10  
11  
12 # 像往常一样创建Flask-SQLAlchemy模型,但是要遵守下列两点(合理)限制:
13 #  1.必须有一个主键类型是sqlalchemy.Integer或sqlalchemy.Unicode。
14 #  2.必须有__init__方法,用来初始化数据(flask.ext.sqlalchemy.SQLAlchemy.Model已经提供)。
15 class Person(db.Model):
16   id = db.Column(db.Integer, primary_key=True)
17   name = db.Column(db.Unicode, unique=True)
18   birth_date = db.Column(db.Date)
19  
20  
21 class Computer(db.Model):
22   id = db.Column(db.Integer, primary_key=True)
23   name = db.Column(db.Unicode, unique=True)
24   vendor = db.Column(db.Unicode)
25   purchase_time = db.Column(db.DateTime)
26   owner_id = db.Column(db.Integer, db.ForeignKey(person.id))
27   owner = db.relationship(Person, backref=db.backref(computers, lazy=dynamic))
28  
29  
30 # 创建数据库表。
31 db.create_all()
32  
33 # 创建Flask-Restless API管理器
34 manager = flask.ext.restless.APIManager(app, flask_sqlalchemy_db=db)
35  
36 # 创建API端点,这些端点默认在‘/api/<tablename>‘可获取。
37 # 指定允许的HTTP方法也能被这样配置。
38 manager.create_api(Person, methods=[GET, POST, DELETE])
39 manager.create_api(Computer, methods=[GET])
40  
41 # 启动flask程序
42 app.run()

 

 
4.其他功能
     ①可以自定义ReSTful 接口
     ②支持搜索功能
    
5.进一步学习
     

Flask-Restless初步了解

标签:

原文地址:http://www.cnblogs.com/yaoel/p/5131963.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!