comparison pylons_app/model/db.py @ 417:3ed2d46a2ca7

permission refactoring, Implemented views for default permissions, fixes #23 user registration is controlled by permission system. Implemented manual registration option websetup fills default permissions
author Marcin Kuzminski <marcin@python-works.com>
date Sat, 21 Aug 2010 16:34:37 +0200
parents 27f801e03489
children d66a7fa7689b
comparison
equal deleted inserted replaced
416:25ab66a26975 417:3ed2d46a2ca7
32 lastname = Column("lastname", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) 32 lastname = Column("lastname", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
33 email = Column("email", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) 33 email = Column("email", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
34 last_login = Column("last_login", DATETIME(timezone=False), nullable=True, unique=None, default=None) 34 last_login = Column("last_login", DATETIME(timezone=False), nullable=True, unique=None, default=None)
35 35
36 user_log = relation('UserLog') 36 user_log = relation('UserLog')
37 user_perms = relation('UserToPerm', primaryjoin="User.user_id==UserToPerm.user_id")
37 38
38 @LazyProperty 39 @LazyProperty
39 def full_contact(self): 40 def full_contact(self):
40 return '%s %s <%s>' % (self.name, self.lastname, self.email) 41 return '%s %s <%s>' % (self.name, self.lastname, self.email)
41 42
42 def __repr__(self): 43 def __repr__(self):
43 return "<User('%s:%s')>" % (self.user_id, self.username) 44 return "<User('id:%s:%s')>" % (self.user_id, self.username)
44 45
45 class UserLog(Base): 46 class UserLog(Base):
46 __tablename__ = 'user_logs' 47 __tablename__ = 'user_logs'
47 __table_args__ = {'useexisting':True} 48 __table_args__ = {'useexisting':True}
48 user_log_id = Column("user_log_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True) 49 user_log_id = Column("user_log_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
64 description = Column("description", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) 65 description = Column("description", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
65 66
66 user = relation('User') 67 user = relation('User')
67 repo_to_perm = relation('RepoToPerm', cascade='all') 68 repo_to_perm = relation('RepoToPerm', cascade='all')
68 69
70 def __repr__(self):
71 return "<Repository('id:%s:%s')>" % (self.repo_id, self.repo_name)
72
69 class Permission(Base): 73 class Permission(Base):
70 __tablename__ = 'permissions' 74 __tablename__ = 'permissions'
71 __table_args__ = {'useexisting':True} 75 __table_args__ = {'useexisting':True}
72 permission_id = Column("permission_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True) 76 permission_id = Column("permission_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=True)
73 permission_name = Column("permission_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None) 77 permission_name = Column("permission_name", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)