Skip to content
Snippets Groups Projects
Verified Commit 2848308a authored by Sachin Kamath's avatar Sachin Kamath
Browse files

Define basic controller and add flask_api boilerplate

parent 732c9cb4
No related branches found
No related tags found
No related merge requests found
from hodor.app import api
from flask_restplus import Resource
ns = api.namespace('/users', description='Operations related to blog posts')
@ns.route('/users')
class listusers(Resource):
def get(self):
return {'user': 'noob'}
api.add_resource(listusers, '/users')
\ No newline at end of file
from flask import Flask, request
from flask_restplus import Resource, Api
from api.user import ns as user_namespace
app = Flask(__name__)
api = Api(app)
todos = {}
@api.route('/<string:todo_id>')
class TodoSimple(Resource):
def get(self, todo_id):
return {todo_id: todos[todo_id]}
def put(self, todo_id):
todos[todo_id] = request.form['data']
return {todo_id: todos[todo_id]}
api.add_namespace(user_namespace)
if __name__ == '__main__':
app.run(debug=True)
\ No newline at end of file
# -*- coding: utf-8 -*-
from hodor import app
from flask import jsonify
@app.route('/')
def start():
return jsonify({'hello':'world'})
@app.route('/print', methods=['GET', 'POST'])
def printer():
form = {'noob' : 'shit'}
return form
# -*- coding: utf-8 -*-
from hodor import db
class User(db.Model):
__tablename__ = 'users'
# Values entered by the user
username = db.Column(db.String(32), primary_key=True)
first_name = db.Column(db.String(32), nullable=False)
last_name = db.Column(db.String(32), nullable=False)
email = db.Column(db.String(64), unique=True, nullable=False)
password = db.Column(db.String(64), nullable=False)
# Platform values
disabled = db.Column(db.Boolean, default=False)
verified_account = db.Column(db.Boolean, default=False)
verification_code = db.Column(db.String(32), nullable=False)
def __unicode__(self):
return unicode(self.username)
def __init__(self, name):
"""initialize with name."""
self.name = name
def save(self):
db.session.add(self)
db.session.commit()
@staticmethod
def get_all():
return User.query.all()
def delete(self):
db.session.delete(self)
db.session.commit()
def __repr__(self):
return "<User: {}>".format(self.name)
\ No newline at end of file
import os
from flask_script import Manager # class for handling a set of commands
from flask_migrate import Migrate, MigrateCommand
from hodor import db, create_app
from hodor.models.user import User
app = create_app(config_name='development')
migrate = Migrate(app, db)
manager = Manager(app)
manager.add_command('db', MigrateCommand)
if __name__ == '__main__':
manager.run()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment