comparison rhodecode/model/db.py @ 1343:a04fe5986109 beta

#47 implemented basic gui for browsing repo groups
author Marcin Kuzminski <marcin@python-works.com>
date Mon, 23 May 2011 00:00:03 +0200
parents 89ff3e30470f
children 3bce31f026b8
comparison
equal deleted inserted replaced
1342:9dacacc5b7c2 1343:a04fe5986109
295 295
296 296
297 class Group(Base): 297 class Group(Base):
298 __tablename__ = 'groups' 298 __tablename__ = 'groups'
299 __table_args__ = (UniqueConstraint('group_name'), {'useexisting':True},) 299 __table_args__ = (UniqueConstraint('group_name'), {'useexisting':True},)
300 __mapper_args__ = {'order_by':'group_name'}
300 301
301 group_id = Column("group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True) 302 group_id = Column("group_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)
302 group_name = Column("group_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None) 303 group_name = Column("group_name", String(length=255, convert_unicode=False, assert_unicode=None), nullable=False, unique=True, default=None)
303 group_parent_id = Column("group_parent_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=None, default=None) 304 group_parent_id = Column("group_parent_id", Integer(), ForeignKey('groups.group_id'), nullable=True, unique=None, default=None)
305 group_description = Column("group_description", String(length=10000, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
304 306
305 parent_group = relationship('Group', remote_side=group_id) 307 parent_group = relationship('Group', remote_side=group_id)
306 308
307 309
308 def __init__(self, group_name='', parent_group=None): 310 def __init__(self, group_name='', parent_group=None):
334 return '/'.join([g.group_name for g in self.parents] + 336 return '/'.join([g.group_name for g in self.parents] +
335 [self.group_name]) 337 [self.group_name])
336 338
337 @property 339 @property
338 def repositories(self): 340 def repositories(self):
339 return Session.query(Repository).filter(Repository.group == self).all() 341 return Session.query(Repository).filter(Repository.group == self)
340 342
341 class Permission(Base): 343 class Permission(Base):
342 __tablename__ = 'permissions' 344 __tablename__ = 'permissions'
343 __table_args__ = {'useexisting':True} 345 __table_args__ = {'useexisting':True}
344 permission_id = Column("permission_id", Integer(), nullable=False, unique=True, default=None, primary_key=True) 346 permission_id = Column("permission_id", Integer(), nullable=False, unique=True, default=None, primary_key=True)