Compare commits
	
		
			6 Commits
		
	
	
		
			master
			...
			backend-pg
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 70e6641e24 | ||
|  | 2631c344dd | ||
|  | 5c7ca46e56 | ||
|  | 4cb80df58a | ||
|  | 70a5a99909 | ||
|  | 039855db6f | 
							
								
								
									
										13
									
								
								app.py
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								app.py
									
									
									
									
									
								
							| @@ -1,6 +1,19 @@ | ||||
| #!/usr/bin/env python3 | ||||
|  | ||||
| import os | ||||
| import connexion | ||||
| import sqlalchemy | ||||
|  | ||||
| from sqlalchemy import create_engine, Column, Integer, String | ||||
| from sqlalchemy.ext.declarative import declarative_base | ||||
|  | ||||
| Base = declarative_base() | ||||
|  | ||||
| import models | ||||
|  | ||||
| engine = create_engine( os.environ.get( 'DATABASE_URL', 'sqlite:///:memory:' ), echo=True ) | ||||
|  | ||||
| Base.metadata.create_all( engine ) | ||||
|  | ||||
| app = connexion.App(__name__, specification_dir='./swagger/') | ||||
| app.add_api('swagger.yaml', | ||||
|   | ||||
| @@ -1,6 +1,15 @@ | ||||
| from flask import Flask, request | ||||
| from flask_restful import Resource, Api | ||||
|  | ||||
| from models import Duck | ||||
|  | ||||
| #app = | ||||
| def ducks_get(): | ||||
|     return 'do some magic!' | ||||
|  | ||||
| def duck_get(): | ||||
| def duck_get( duck_id ): | ||||
|     return 'do some duck magic!' | ||||
|  | ||||
| def duck_post( name, color ): | ||||
|     new_duck = Duck( name, color ) | ||||
|     return new_duck | ||||
|   | ||||
							
								
								
									
										24
									
								
								models.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								models.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| import sqlalchemy as sa | ||||
| import sqlalchemy.orm as orm | ||||
| from sqlalchemy.ext.declarative import declarative_base | ||||
| #from flask.ext.login import UserMixin | ||||
| #from sqlalchemy_login_models.model import Base, UserKey, User as SLM_User | ||||
|  | ||||
| __all__ = ['Duck'] | ||||
|  | ||||
| Base = declarative_base() | ||||
|  | ||||
| class Duck( Base ): | ||||
|     __tablename__ = 'duck' | ||||
|     __name__ = "duck" | ||||
|  | ||||
|     duck_id = sa.Column( sa.Integer, primary_key=True ) | ||||
|     name = sa.Column( sa.String ) | ||||
|     color = sa.Column( sa.String ) | ||||
|  | ||||
|     def __repr__(self): | ||||
|         return '{"duck_id": "'+ ( str( self.duck_id ) or '0' ) +'", "name": "'+ self.name +'", "color": "'+ self.color +'" }' | ||||
|  | ||||
|     def __init__(self, name, color): | ||||
|         self.name = name | ||||
|         self.color = color | ||||
| @@ -2,3 +2,5 @@ Flask==0.11.1 | ||||
| Flask-RESTful==0.3.5 | ||||
| connexion==1.0.129 | ||||
| gunicorn | ||||
| sqlalchemy | ||||
| psycopg2 | ||||
|   | ||||
| @@ -20,7 +20,7 @@ paths: | ||||
|         200: | ||||
|           description: "An object which contains metadata and an array of ducks" | ||||
|           schema: | ||||
|             type: array | ||||
|             type: "array" | ||||
|             items: | ||||
|               $ref: '#/definitions/Duck' | ||||
|       security: | ||||
| @@ -30,9 +30,33 @@ paths: | ||||
|       tags: | ||||
|         - "default_controller" | ||||
|       operationId: "controllers.default_controller.duck_get" | ||||
|       parameters: | ||||
|         - name: "duck_id" | ||||
|           description: "ID of the Duck" | ||||
|           in: "path" | ||||
|           required: true | ||||
|           type: "integer" | ||||
|       responses: | ||||
|         200: | ||||
|           description: "All data regarding the specified duck" | ||||
|     post: | ||||
|       tags: | ||||
|         - "default_controller" | ||||
|       operationId: "controllers.default_controller.duck_post" | ||||
|       parameters: | ||||
|         - name: "name" | ||||
|           description: "Name of the Duck" | ||||
|           in: "formData" | ||||
|           required: true | ||||
|           type: "string" | ||||
|         - name: "color" | ||||
|           description: "Color of the Duck" | ||||
|           in: "formData" | ||||
|           required: true | ||||
|           type: "string" | ||||
|       responses: | ||||
|         200: | ||||
|           description: "Cool" | ||||
| securityDefinitions: | ||||
|   api_key: | ||||
|     type: "apiKey" | ||||
| @@ -40,17 +64,17 @@ securityDefinitions: | ||||
|     in: "header" | ||||
| definitions: | ||||
|   Duck: | ||||
|     type: object | ||||
|     type: "object" | ||||
|     properties: | ||||
|       duck_id: | ||||
|         type: number | ||||
|         description: ID number of the duck | ||||
|         type: "integer" | ||||
|         description: "ID number of the duck" | ||||
|       name: | ||||
|         type: string | ||||
|         description: The name of the duck | ||||
|         type: "string" | ||||
|         description: "The name of the duck" | ||||
|       color: | ||||
|         type: string | ||||
|         description: Color of the duck | ||||
|         type: "string" | ||||
|         description: "Color of the duck" | ||||
|     #species = models.ForeignKey(Species) | ||||
|     #location = models.ForeignKey(Location) | ||||
|       #competencies: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user