comparison pylons_app/lib/db_manage.py @ 239:b18f89d6d17f

Adde draft for permissions systems, made all needed decorators, and checks. For future usage in the system.
author Marcin Kuzminski <marcin@python-works.com>
date Sun, 30 May 2010 19:49:40 +0200
parents a0116e944da1
children 7c4fa2a66195
comparison
equal deleted inserted replaced
238:a55c17874486 239:b18f89d6d17f
1 from os.path import dirname as dn, join as jn
2 from pylons_app.lib.auth import get_crypt_password
3 from pylons_app.model import init_model
4 from pylons_app.model.db import User, Permission
5 from pylons_app.model.meta import Session, Base
6 from sqlalchemy.engine import create_engine
1 import logging 7 import logging
2 from os.path import dirname as dn
3 from os.path import join as jn
4 from sqlalchemy.engine import create_engine
5 import os 8 import os
6 import sys 9 import sys
7 ROOT = dn(dn(dn(os.path.realpath(__file__)))) 10 ROOT = dn(dn(dn(os.path.realpath(__file__))))
8 sys.path.append(ROOT) 11 sys.path.append(ROOT)
9 12
10 from pylons_app.model.db import User
11 from pylons_app.model.meta import Session, Base
12 13
13 from pylons_app.lib.auth import get_crypt_password
14 from pylons_app.model import init_model
15 14
16 log = logging.getLogger('db manage') 15 log = logging.getLogger('db manage')
17 log.setLevel(logging.DEBUG) 16 log.setLevel(logging.DEBUG)
18 console_handler = logging.StreamHandler() 17 console_handler = logging.StreamHandler()
19 console_handler.setFormatter(logging.Formatter("%(asctime)s.%(msecs)03d" 18 console_handler.setFormatter(logging.Formatter("%(asctime)s.%(msecs)03d"
66 self.sa.commit() 65 self.sa.commit()
67 except: 66 except:
68 self.sa.rollback() 67 self.sa.rollback()
69 raise 68 raise
70 69
70 def create_permissions(self):
71 perms = [('can_view_admin_users', 'Access to admin user view'),
72
73 ]
74
75 for p in perms:
76 new_perm = Permission()
77 new_perm.permission_name = p[0]
78 new_perm.permission_longname = p[1]
79 try:
80 self.sa.add(new_perm)
81 self.sa.commit()
82 except:
83 self.sa.rollback()
84 raise
85
86
87
71 if __name__ == '__main__': 88 if __name__ == '__main__':
72 dbmanage = DbManage(log_sql=True) 89 dbmanage = DbManage(log_sql=True)
73 dbmanage.create_tables(override=True) 90 dbmanage.create_tables(override=True)
74 dbmanage.admin_prompt() 91 dbmanage.admin_prompt()
92 dbmanage.create_permissions()
75 93
76 94