Skip to content

Instantly share code, notes, and snippets.

@hurrycane
Created January 17, 2014 10:41
Show Gist options
  • Save hurrycane/8471425 to your computer and use it in GitHub Desktop.
Save hurrycane/8471425 to your computer and use it in GitHub Desktop.
# cat resources/user/api.py
from finny.views import ModelResource
from vvv.boot import db
from resources.user.model import User
class UsersView(ModelResource):
route_base = "users"
model = User
db = db
# cat resources/user/model.py
from sqlalchemy.orm import relationship, backref
from vvv.boot import db
class User(db.Model):
__tablename__ = "users"
__backref__ = ('characters',)
id = db.Column(db.Integer, primary_key=True)
characters = relationship("Character", backref="users")
name = db.Column(db.String(128), nullable=False)
# cat resources/character/api.py
from finny.views import ModelResource
from vvv.boot import db
from resources.character.model import Character
from resources.user.model import User
from resources.powerup.model import Powerup
from resources.user.api import UsersView
from sqlalchemy import and_
class CharactersView(ModelResource):
route_base = "characters"
model = Character
db = db
__parent__ = UsersView
# cat resources/character/model.py
from vvv.boot import db
from sqlalchemy import ForeignKey
from sqlalchemy.orm import relationship, backref
class Character(db.Model):
__tablename__ = "characters"
__backref__ = ('powerups',)
id = db.Column(db.Integer, primary_key=True)
user_id = db.Column(db.Integer, ForeignKey('users.id'))
name = db.Column(db.String(128), nullable=False)
powerups = relationship("Powerup", backref="characters")
# users get the ref to the original user
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment