Guest User

Untitled

a guest
Mar 7th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. from sqlalchemy.orm import *
  2. from sqlalchemy import Table, Column, ForeignKey, Integer
  3. from sqlalchemy.types import Integer, Unicode, String, DateTime
  4.  
  5. from pylons_openid.model import meta
  6.  
  7. def init_model(engine):
  8. """Call me before using any of the tables or classes in the model"""
  9. meta.Session.configure(bind=engine)
  10. meta.engine = engine
  11.  
  12.  
  13. user_table = Table('user', meta.metadata,
  14. Column('id', Integer, primary_key=True),
  15. Column('username', String(128), nullable=False),
  16. Column('password', String(128), nullable=False),
  17. Column('acl', String(16), nullable=False),
  18. Column('name', String(32), nullable=False),
  19. Column('dateLogin', DateTime),
  20. Column('sessionId', String(32)),
  21. Column('ip', String(16)),
  22. useexisting=True
  23. )
  24.  
  25. user_openid_table = Table('user_openid', meta.metadata,
  26. Column('id', Integer, primary_key=True),
  27. Column('verifiedEmail', String(200), nullable=False),
  28. Column('displayName', String(200), nullable=False),
  29. Column('preferredUsername', String(200), nullable=False),
  30. Column('providerName', String(100), nullable=False),
  31. Column('identifier', String(200), nullable=False),
  32. Column('email', String(200), nullable=False),
  33. Column('user_id', Integer, ForeignKey("user.id")),
  34. useexisting=True
  35. )
  36.  
  37.  
  38. class User(object):
  39. def __init__(self, id=None, username=None, password=None, acl=None, name=None, dateLogin=None, sessionId=None, ip=None):
  40. self.id = id
  41. self.username = username
  42. self.password = password
  43. self.acl = acl
  44. self.name = name
  45. self.dateLogin = dateLogin
  46. self.sessionId = sessionId
  47. self.ip = ip
  48. def __repr__(self):
  49. return self.name
  50.  
  51. class UserOpenId(object):
  52. def __init__(self, id=None, verifiedEmail=None, displayName=None, preferredUsername=None, providerName=None, identifier=None, email=None, user_id=None):
  53. self.id = id
  54. self.verifiedEmail = verifiedEmail
  55. self.displayName = displayName
  56. self.preferredUsername = preferredUsername
  57. self.providerName = providerName
  58. self.identifier = identifier
  59. self.email = email
  60. self.user_id = user_id
  61. def __repr__(self):
  62. return "%s (%s) %s" % (self.providerName, self.verifiedEmail, self.identifier)
  63.  
  64.  
  65. mapper(User, user_table, properties={
  66. "openids": relation(UserOpenId)
  67. })
  68. mapper(UserOpenId, user_openid_table, properties={
  69. "user": relation(User)
  70. })
Add Comment
Please, Sign In to add comment