Advertisement
OlexBy

many-to-many flask

May 28th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.99 KB | None | 0 0
  1. from flask import g
  2. from geoalchemy2 import Geography
  3. from ..db import db
  4.  
  5.  
  6. organization_relationships = db.Table(
  7. 'organization_relationships',
  8. db.Column('user_id', db.Integer,
  9. db.ForeignKey('user.id'), nullable=False),
  10. db.Column('organization_id', db.Integer,
  11. db.ForeignKey('organization.id'), nullable=False),
  12. db.PrimaryKeyConstraint('user_id', 'organization_id'))
  13.  
  14.  
  15. class User(db.Model):
  16. id = db.Column(db.Integer, primary_key=True)
  17. organizations = db.relationship('Organization',
  18. secondary=organization_relationships,
  19. backref=db.backref('User', lazy='dynamic'))
  20. fb_first_name = db.Column(db.String(120))
  21. fb_last_name = db.Column(db.String(120))
  22. fb_id = db.Column(db.String(40), unique=True)
  23. email = db.Column(db.String(120), unique=True)
  24. about_me = db.Column(db.String(120))
  25. is_superuser = db.Column(db.Boolean, default=False)
  26.  
  27. def __init__(self, fb_first_name="", fb_last_name="", fb_id="",
  28. email="", about_me="", is_superuser=False):
  29. self.fb_first_name = fb_first_name
  30. self.fb_last_name = fb_last_name
  31. self.fb_id = fb_id
  32. self.email = email
  33. self.about_me = about_me
  34. self.is_superuser = is_superuser
  35.  
  36. def __repr__(self):
  37. return '<User %r>' % self.email
  38.  
  39.  
  40. class Organization(db.Model):
  41. id = db.Column(db.Integer, primary_key=True)
  42. name = db.Column(db.String(120))
  43. address = db.Column(Geography(geometry_type='GEOMETRY'))
  44.  
  45. def __init__(self, name="", address=""):
  46. self.name = name
  47. self.address = address
  48.  
  49. def __repr__(self):
  50. return '%s' % self.name
  51.  
  52.  
  53. class Spatial_ref_sys(db.Model):
  54. srid = db.Column(db.Integer, primary_key=True)
  55. auth_name = db.Column(db.String(256))
  56. auth_srid = db.Column(db.Integer)
  57. srtext = db.Column(db.String(2048))
  58. proj4text = db.Column(db.String(2048))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement