Changeset - a0116e944da1
[Not reviewed]
default
0 7 0
Marcin Kuzminski - 15 years ago 2010-05-27 21:31:30
marcin@python-works.com
changed naming convention for db modules.
7 files changed with 30 insertions and 27 deletions:
0 comments (0 inline, 0 general)
pylons_app/controllers/admin.py
Show inline comments
 
@@ -5,7 +5,7 @@ from pylons import request, response, se
 
from pylons.controllers.util import abort, redirect
 
from pylons_app.lib.base import BaseController, render
 
from pylons_app.model import meta
 
from pylons_app.model.db import UserLogs
 
from pylons_app.model.db import UserLog
 
from webhelpers.paginate import Page
 
from pylons_app.lib.auth import LoginRequired
 

	
 
@@ -23,8 +23,7 @@ class AdminController(BaseController):
 
    def index(self):
 
        sa = meta.Session
 
                         
 
        users_log = sa.query(UserLogs)\
 
            .order_by(UserLogs.action_date.desc())
 
        users_log = sa.query(UserLog).order_by(UserLog.action_date.desc())
 
        p = int(request.params.get('page', 1))
 
        c.users_log = Page(users_log, page=p, items_per_page=10)
 
        c.log_data = render('admin/admin_log.html')
pylons_app/controllers/users.py
Show inline comments
 
@@ -5,7 +5,7 @@ from pylons.controllers.util import abor
 

	
 
from pylons_app.lib.base import BaseController, render
 
from formencode import htmlfill
 
from pylons_app.model.db import Users, UserLogs
 
from pylons_app.model.db import User, UserLog
 
import crypt
 

	
 
log = logging.getLogger(__name__)
 
@@ -25,7 +25,7 @@ class UsersController(BaseController):
 
        """GET /users: All items in the collection"""
 
        # url('users')
 
        
 
        c.users_list = self.sa.query(Users).all()     
 
        c.users_list = self.sa.query(User).all()     
 
        return render('admin/users/users.html')
 
    
 
    def create(self):
 
@@ -34,7 +34,7 @@ class UsersController(BaseController):
 
        params = dict(request.params)
 

	
 
        try:
 
            new_user = Users()
 
            new_user = User()
 
            new_user.active = params.get('active', False)
 
            new_user.username = params.get('username')
 
            new_user.password = crypt.crypt(params.get('password'), '6a')
 
@@ -63,7 +63,7 @@ class UsersController(BaseController):
 
        params = dict(request.params)
 

	
 
        try:
 
            new_user = self.sa.query(Users).get(id)
 
            new_user = self.sa.query(User).get(id)
 
            new_user.active = params.get('active', False)
 
            new_user.username = params.get('username')
 
            if params.get('new_password'):
 
@@ -85,7 +85,7 @@ class UsersController(BaseController):
 
        #           method='delete')
 
        # url('user', id=ID)
 
        try:
 
            self.sa.delete(self.sa.query(Users).get(id))
 
            self.sa.delete(self.sa.query(User).get(id))
 
            self.sa.commit()
 
        except:
 
            self.sa.rollback()
 
@@ -100,7 +100,7 @@ class UsersController(BaseController):
 
    def edit(self, id, format='html'):
 
        """GET /users/id/edit: Form to edit an existing item"""
 
        # url('edit_user', id=ID)
 
        c.user = self.sa.query(Users).get(id)
 
        c.user = self.sa.query(User).get(id)
 
        defaults = c.user.__dict__
 
        return htmlfill.render(
 
            render('admin/users/user_edit.html'),
pylons_app/lib/auth.py
Show inline comments
 
@@ -2,7 +2,7 @@ from functools import wraps
 
from pylons import session, url
 
from pylons.controllers.util import abort, redirect
 
from pylons_app.model import meta
 
from pylons_app.model.db import Users
 
from pylons_app.model.db import User
 
from sqlalchemy.exc import OperationalError
 
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
 
import crypt
 
@@ -20,7 +20,7 @@ def authfunc(environ, username, password
 
    sa = meta.Session
 
    password_crypt = get_crypt_password(password)
 
    try:
 
        user = sa.query(Users).filter(Users.username == username).one()
 
        user = sa.query(User).filter(User.username == username).one()
 
    except (NoResultFound, MultipleResultsFound, OperationalError) as e:
 
        log.error(e)
 
        user = None
pylons_app/lib/db_manage.py
Show inline comments
 
import logging
 
from os.path import dirname as dn
 
from os.path import join as jn
 
from sqlalchemy.engine import create_engine
 
import os
 
import sys
 
ROOT = dn(dn(dn(os.path.realpath(__file__))))
 
sys.path.append(ROOT)
 

	
 
from pylons_app.model.db import Users
 
from pylons_app.model.db import User
 
from pylons_app.model.meta import Session, Base
 

	
 
from pylons_app.lib.auth import get_crypt_password
 
@@ -22,14 +23,14 @@ log.addHandler(console_handler)
 
class DbManage(object):
 
    def __init__(self, log_sql):
 
        self.dbname = 'hg_app.db'
 
        dburi = 'sqlite:////%s' % os.path.join(ROOT, self.dbname)
 
        dburi = 'sqlite:////%s' % jn(ROOT, self.dbname)
 
        engine = create_engine(dburi, echo=log_sql) 
 
        init_model(engine)
 
        self.sa = Session()
 
    
 
    def check_for_db(self, override):
 
        log.info('checking for exisiting db')
 
        if os.path.isfile(os.path.join(ROOT, self.dbname)):
 
        if os.path.isfile(jn(ROOT, self.dbname)):
 
            log.info('database exisist')
 
            if not override:
 
                raise Exception('database already exists')
 
@@ -41,6 +42,7 @@ class DbManage(object):
 
        self.check_for_db(override)
 
        if override:
 
            log.info("database exisist and it's going to be destroyed")
 
            os.remove(jn(ROOT, self.dbname))
 
        Base.metadata.create_all(checkfirst=override)
 
        log.info('Created tables for %s', self.dbname)
 
    
 
@@ -53,7 +55,7 @@ class DbManage(object):
 
    def create_user(self, username, password, admin=False):
 
        log.info('creating administrator user %s', username)
 
        
 
        new_user = Users()
 
        new_user = User()
 
        new_user.username = username
 
        new_user.password = get_crypt_password(password)
 
        new_user.admin = admin
pylons_app/lib/middleware/simplehg.py
Show inline comments
 
@@ -18,7 +18,7 @@ from paste.httpheaders import REMOTE_USE
 
from pylons_app.lib.auth import authfunc
 
from pylons_app.lib.utils import is_mercurial, make_ui, invalidate_cache
 
from pylons_app.model import meta
 
from pylons_app.model.db import UserLogs, Users
 
from pylons_app.model.db import UserLog, User
 
from webob.exc import HTTPNotFound
 
import logging
 
import os
 
@@ -102,9 +102,8 @@ class SimpleHg(object):
 
    def __log_user_action(self, username, action, repo):
 
        sa = meta.Session
 
        try:
 
            user = sa.query(Users)\
 
                    .filter(Users.username == username).one()
 
            user_log = UserLogs()
 
            user = sa.query(User).filter(User.username == username).one()
 
            user_log = UserLog()
 
            user_log.user_id = user.user_id
 
            user_log.action = action
 
            user_log.repository = repo.replace('/', '')
pylons_app/model/db.py
Show inline comments
 
@@ -2,7 +2,7 @@ from pylons_app.model.meta import Base
 
from sqlalchemy.orm import relation, backref
 
from sqlalchemy import *
 

	
 
class Users(Base): 
 
class User(Base): 
 
    __tablename__ = 'users'
 
    __table_args__ = {'useexisting':True}
 
    user_id = Column("user_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=1)
 
@@ -15,24 +15,27 @@ class Users(Base):
 
    email = Column("email", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
 
    last_login = Column("last_login", DATETIME(timezone=False), nullable=True, unique=None, default=None)
 
    
 
    user_log = relation('UserLogs')
 
    user_log = relation('UserLog')
 
    
 
    def __repr__(self):
 
        return "<User('%s:%s')>" % (self.user_id, self.username)
 
      
 
class UserLogs(Base): 
 
class UserLog(Base): 
 
    __tablename__ = 'user_logs'
 
    __table_args__ = {'useexisting':True}
 
    user_log_id = Column("id", INTEGER(), nullable=False, unique=True, default=None, primary_key=1)
 
    user_log_id = Column("user_log_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=1)
 
    user_id = Column("user_id", INTEGER(), ForeignKey(u'users.user_id'), nullable=True, unique=None, default=None)
 
    repository = Column("repository", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
 
    action = Column("action", TEXT(length=None, convert_unicode=False, assert_unicode=None), nullable=True, unique=None, default=None)
 
    action_date = Column("action_date", DATETIME(timezone=False), nullable=True, unique=None, default=None)
 
    
 
    user = relation('Users')
 
    user = relation('User')
 

	
 
class Repository(Base):
 
    __tablename__ = 'repositories'
 
    repo_id = Column("repo_id", INTEGER(), nullable=False, unique=True, default=None, primary_key=1)
 

	
 
class Permissions(Base):
 
class Permission(Base):
 
    __tablename__ = 'permissions'
 
    __table_args__ = {'useexisting':True}
 
    permission_id = Column("id", INTEGER(), nullable=False, unique=True, default=None, primary_key=1)
pylons_app/model/forms.py
Show inline comments
 
@@ -24,7 +24,7 @@ from pylons import session
 
from pylons.i18n.translation import _
 
from pylons_app.lib.auth import get_crypt_password
 
from pylons_app.model import meta
 
from pylons_app.model.db import Users
 
from pylons_app.model.db import User
 
from sqlalchemy.exc import OperationalError
 
from sqlalchemy.orm.exc import NoResultFound, MultipleResultsFound
 
from webhelpers.pylonslib.secure_form import authentication_token
 
@@ -66,7 +66,7 @@ class ValidAuth(formencode.validators.Fa
 
        crypted_passwd = get_crypt_password(value['password'])
 
        username = value['username']
 
        try:
 
            user = sa.query(Users).filter(Users.username == username).one()
 
            user = sa.query(User).filter(User.username == username).one()
 
        except (NoResultFound, MultipleResultsFound, OperationalError) as e:
 
            log.error(e)
 
            user = None
0 comments (0 inline, 0 general)