markdown api

This commit is contained in:
Kenneth Reitz
2013-08-15 04:25:00 -04:00
parent e3af61816b
commit c8dd531829
+46 -6
View File
@@ -1,7 +1,8 @@
# -*- coding: utf-8 -*-
from flask import Flask, request
from flask.ext.restful import Resource, Api
from flask.ext.restful import Resource, Api, reqparse
from markdown import markdown
app = Flask(__name__)
api = Api(app)
@@ -13,27 +14,66 @@ def hello():
todos = {}
todos['1'] = 'yo'
_user = {
'name': 'kennethreitz',
'email': 'me@kennethreitz.com',
'password': 'xxxxx'
}
_document = {
'name': 'kennethreitz',
'slug': 'emulators',
'text': '# Emulators\n\nGames are fun.',
'owner': 'kennethreitz'
}
class UserProfile(Resource):
def get(self, profile):
return {profile: todos[profile]}
return {'user': _user}
def put(self, profile):
todos[profile] = request.form['data']
return {profile: todos[profile]}
parser.add_argument('data', type=str)
args = parser.parse_args()
todos[profile] = args['data']
return {'user': _user}
api.add_resource(UserProfile, '/<string:profile>')
class Document(Resource):
def get(self, profile, document):
return {profile: todos[profile]}
return {'user': _user, 'document': _document}
def put(self, profile, document):
todos[profile] = request.form['data']
return {profile: todos[profile]}
return {'user': _user, 'document': _document}
api.add_resource(Document, '/<string:profile>/<path:document>')
@app.route('/render', methods=['PUT', 'POST'])
def render():
pass
@app.route('/render/<string:profile>/<path:document>')
def render_document(profile, document):
return markdown(_document['text'])
class MarkdownService(Resource):
def get(self, profile, document):
return {'user': _user, 'document': _document}
def put(self, profile, document):
todos[profile] = request.form['data']
return {'user': _user, 'document': _document}
api.add_resource(MarkdownService, '/render')
if __name__ == '__main__':