Advertisement
eyohansa

Schema

Dec 20th, 2014
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.12 KB | None | 0 0
  1. from passwordsafe.models import Base
  2. from sqlalchemy.orm import relationship
  3.  
  4.  
  5. from sqlalchemy import (\
  6.         Column,
  7.         Integer,
  8.         String
  9.     )
  10.  
  11. class Data(Base):
  12.  
  13.     __tablename__ = 'data'
  14.    
  15.     id = Column('data_id', Integer, primary_key=True)
  16.     entry = Column('data_entry', String(256), nullable=False)
  17.     public_key = Column('data_public_key', String(1024), nullable=False)
  18.    
  19.     def __init__(self, entry, public_key):
  20.         self.entry = entry
  21.         self.public_key = public_key
  22.  
  23.     def __repr__(self):
  24.         return "<Data(entry='%s', public_key='%s')>" % (
  25.                     self.entry, self.public_key)
  26.  
  27. class User(Base):
  28.  
  29.     __tablename__ = 'users'
  30.    
  31.     id = Column('user_id', Integer, primary_key=True)
  32.     username = Column('user_name', String(20), nullable=False)
  33.     password = Column('user_pass', String(512), nullable=False)
  34.     email = Column('user_email', String(256), nullable=False)
  35.     salt = Column('user_salt', String(256), nullable=False)
  36.     public_key = Column('user_public_key', String(1024), nullable=False)
  37.     private_key = Column('user_private_key', String(1024), nullable=False)
  38.     data_entries = relationship("UserData", backref="user")
  39.    
  40.     def __repr__(self):
  41.         return "<User(username='%s', password='%s', email='%s', salt='%s', public_key='%s', private_key='%s')>" % (
  42.                     self.username, self.password, self.email, self.salt, self.public_key, self.private_key)
  43.  
  44.     def __init__(self, username, password, email, salt, public_key, private_key):
  45.         self.username = username
  46.         self.password = password
  47.         self.email = email
  48.         self.salt = salt
  49.         self.public_key = public_key
  50.         self.private_key = private_key
  51.  
  52.  
  53. class UserData(Base):
  54.    
  55.     __tablename__ = 'user_data_map'
  56.    
  57.     user_id = Column('user_id', Integer, ForeignKey('users.user_id'), primary_key=True)
  58.     data_id = Column('data_id', Integer, ForeignKey('data.data_id'), primary_key=True)
  59.     data_private_key = Column('data_private_key', String(1024), nullable=False)
  60.     data = relationship("Data", backref="userdata")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement