Changeset 1179

Show
Ignore:
Timestamp:
09/10/08 22:37:59 (2 months ago)
Author:
gawel
Message:

new mapper style

Location:
PyBB/trunk
Files:
1 removed
24 modified

Legend:

Unmodified
Added
Removed
  • PyBB/trunk/buildout.cfg

    r1178 r1179  
    12 12 Pylons=0.9.7rc1 
    13 13 setuptools=0.6c8 
    14   SQLAlchemy=0.4.7 
      14 SQLAlchemy=0.5.0beta3 
    15 15 docutils=0.5 
    16 16 Paste=1.7.1 
      17 setuptools=0.6c8 
    17 18  
    18 19 [eggs] 
  • PyBB/trunk/pybb/forms/__init__.py

    r1162 r1179  
    12 12 from pybb.forms.fields import * 
    13 13 from pybb.forms.validators import * 
    14   from pybb.model import Site 
    15   from pybb.model import User 
    16   from pybb.model import Forum 
    17   from pybb.model import Topic 
    18   from pybb.model import Post 
      14 from pybb.model.tables import Site 
      15 from pybb.model.tables import User 
      16 from pybb.model.tables import Forum 
      17 from pybb.model.tables import Topic 
      18 from pybb.model.tables import Post 
    19 19  
    20 20 class Form(Base): 
  • PyBB/trunk/pybb/lib/base.py

    r1173 r1179  
    11 11 from pybb.model import meta 
    12 12 from pybb.lib import sql 
    13   from pybb import model 
      13 import pybb.model.tables as model 
    14 14  
    15 15 __all__ = ['BaseController', 'render', 'url', 'permissions', 
  • PyBB/trunk/pybb/lib/filters.py

    r1161 r1179  
    2 2 from decorator import decorator 
    3 3 from pylons.templating import render_mako as render 
      4 import pybb.model.tables as model 
    4 5 from pybb.lib.helpers import url 
    5 6 from pybb.lib import sql 
    6   from pybb import model 
    7 7 from pybb import forms 
    8 8  
    … …  
    52 52                     ).filter_by(id=user_id).first() 
    53 53         amount = sql.count(model.Post.id, 
    54                              model.Post.c.user_id==user_id) 
      54                            model.Post.user_id==user_id) 
    55 55         return user, amount 
    56 56     return render('/avatar.mako', extra_vars=dict(get_user_data=get_user_data), 
  • PyBB/trunk/pybb/lib/permissions.py

    r1174 r1179  
    4 4 from authkit.authorize.pylons_adaptors import authorize 
    5 5 from pylons import cache 
      6 import pybb.model.tables as model 
    6 7 from pybb.lib.roles import * 
    7 8 from pybb.lib import sql 
    8   from pybb import model 
    9 9 import logging 
    10 10  
    … …  
    91 91         return sql.select([model.User.login], 
    92 92                   model.Role.role==ADMINISTRATOR, 
    93                     from_obj=sql.join(model.User, model.Role)).set() 
      93                   from_obj=sql.join(model.users, model.roles)).set() 
    94 94  
    95 95 Administrator = Administrators() 
    … …  
    103 103                   sql.and_(sql.or_(model.Role.role==ADMINISTRATOR, 
    104 104                                    model.Role.role==MODERATOR)), 
    105                     from_obj=sql.join(model.User, model.Role)).set() 
      105                   from_obj=sql.join(model.users, model.roles)).set() 
    106 106  
    107 107 Moderator = Moderators() 
    … …  
    130 130                                model.Role.role==LOCAL_MODERATOR, 
    131 131                                model.Role.forum_id==forum_id), 
    132                         from_obj=sql.join(model.User, model.Role)).set()) 
      132                       from_obj=sql.join(model.users, model.roles)).set()) 
    133 133         return users 
    134 134  
  • PyBB/trunk/pybb/lib/utils.py

    r1160 r1179  
    5 5 from pybb.lib.helpers import url 
    6 6 from pybb.lib import sql 
    7   from pybb import model 
      7 import pybb.model.tables as model 
    8 8 from pybb import forms 
    9 9 import os 
  • PyBB/trunk/pybb/model/__init__.py

    r1162 r1179  
    13 13     #orm.mapper(Reflected, reflected_table) 
    14 14  
    15       sm = orm.sessionmaker(autoflush=True, transactional=True, bind=engine) 
      15     sm = orm.sessionmaker(autoflush=True, autocommit=False, bind=engine) 
    16 16  
    17 17     meta.engine = engine 
    18 18     meta.Session = orm.scoped_session(sm) 
      19     meta.Base.metadata = meta.metadata 
      20     import tables 
    19 21  
    20 22  
    … …  
    38 40 #    pass 
    39 41  
    40   from site import Site, sites 
    41   from user import User, users 
    42   from roles import Role, roles 
    43   from forum import Forum, forums 
    44   from post import Post, posts 
    45   from post import Topic, topics 
    46   from subscriptions import Subscription, subscriptions 
    47   from notifications import Notification, notifications 
    48 42  
  • PyBB/trunk/pybb/model/forum.py

    r1162 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7  
    9   forums = sa.Table('forums', meta.metadata, 
    10       sa.Column("slug", sa.types.String(50), primary_key=True), 
    11       sa.Column("title", sa.types.String(255), nullable=False), 
    12       sa.Column("text", sa.types.Text, default='', nullable=False), 
    13       sa.Column("format", sa.types.String(10), default='rst', nullable=False), 
    14       sa.Column('amount', sa.types.Integer, default=0), 
    15       sa.Column('post_amount', sa.types.Integer, default=0), 
    16       sa.Column("cooked", sa.types.Text, default=''), 
    17       sa.Column('created', sa.DateTime, default=datetime.now), 
    18       sa.Column('modified', sa.DateTime, default=datetime.now, 
    19                 onupdate=func.current_timestamp()), 
    20       sa.Column('user_id', sa.types.Integer, sa.ForeignKey('users.id')), 
    21       sa.Column('site_id', sa.types.Integer, 
    22                 sa.ForeignKey('sites.id'), default=0), 
    23       ) 
      8 class Forum(meta.Base): 
      9     __tablename__ = 'forums' 
      10     slug = sa.Column("slug", sa.types.String(50), primary_key=True) 
      11     title = sa.Column("title", sa.types.String(255), nullable=False) 
      12     text = sa.Column("text", sa.types.Text, default="", nullable=False) 
      13     format = sa.Column("format", sa.types.String(10), default="rst", nullable=False) 
      14     amount = sa.Column("amount", sa.types.Integer, default=0) 
      15     post_amount = sa.Column("post_amount", sa.types.Integer, default=0) 
      16     cooked = sa.Column("cooked", sa.types.Text, default="") 
      17     created = sa.Column("created", sa.DateTime, default=datetime.now) 
      18     modified = sa.Column("modified", sa.DateTime, default=datetime.now, 
      19               onupdate=func.current_timestamp()) 
      20     user_id = sa.Column("user_id", sa.types.Integer, sa.ForeignKey("users.id")) 
      21     site_id = sa.Column("site_id", sa.types.Integer, 
      22               sa.ForeignKey("sites.id"), default=0) 
    24 23  
    25   class Forum(base.Slug): 
    26       """Forum object 
    27       """ 
      24     def slugify(self): 
      25         if not self.slug: 
      26             slug = self.title.replace(' ', '-') 
      27             slug = slug.lower() 
      28             self.slug = slug.encode('ascii', 'ignore') 
    28 29  
    29   orm.mapper(Forum, forums) 
    30    
      30 forums = Forum.__table__ 
  • PyBB/trunk/pybb/model/meta.py

    r1076 r1179  
    14 14 # names, you'll need a metadata for each database 
    15 15 metadata = MetaData() 
      16  
      17 from sqlalchemy.ext.declarative import declarative_base 
      18  
      19 Base = declarative_base() 
  • PyBB/trunk/pybb/model/notifications.py

    r1138 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7  
    9   notifications = sa.Table('notifications', meta.metadata, 
    10       sa.Column("id", sa.types.Integer, primary_key=True), 
    11       sa.Column("topic_id", sa.types.String(50), nullable=True), 
    12       sa.Column('post_id', sa.types.Integer, nullable=True), 
    13       sa.Column('created', sa.DateTime, default=datetime.now), 
    14       sa.Column('modified', sa.DateTime, default=datetime.now, 
    15                 onupdate=func.current_timestamp()), 
    16       ) 
    17    
    18   class Notification(base.Base): 
    19       """user notification 
    20       """ 
      8 class Notification(meta.Base): 
      9     __tablename__ = 'notifications' 
      10     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      11     topic_id = sa.Column("topic_id", sa.types.String(50), nullable=True) 
      12     post_id = sa.Column('post_id', sa.types.Integer, nullable=True) 
      13     created = sa.Column('created', sa.DateTime, default=datetime.now) 
      14     modified = sa.Column('modified', sa.DateTime, default=datetime.now, 
      15               onupdate=func.current_timestamp()) 
    21 16  
    22 17     def __repr__(self): 
    … …  
    24 19                                                self.post_id) 
    25 20  
    26   orm.mapper(Notification, notifications) 
    27    
    28    
      21 notifications = Notification.__table__ 
  • PyBB/trunk/pybb/model/post.py

    r1156 r1179  
    5 5 from sqlalchemy import func 
    6 6 from pybb.model import meta 
    7   from pybb.model import base 
    8 7 from pybb.model.forum import Forum, forums 
    9 8 from pybb.model.user import User, users 
    10 9  
    11   def common_fields(): 
    12       return [ 
    13       sa.Column('amount', sa.types.Integer, default=0), 
    14       sa.Column("score", sa.types.Integer, default=0), 
    15       sa.Column("title", sa.types.String(255), nullable=False), 
    16       sa.Column("text", sa.types.Text, nullable=False), 
    17       sa.Column("format", sa.types.String(10), default='rst', nullable=False), 
    18       sa.Column("cooked", sa.types.Text, default=''), 
    19       sa.Column('created', sa.DateTime, default=datetime.now), 
    20       sa.Column('modified', sa.DateTime, default=datetime.now), 
    21                 #onupdate=func.current_timestamp()), 
    22       sa.Column('user_id', sa.types.Integer, 
    23                 sa.ForeignKey(users.c.id), nullable=False), 
    24       sa.Column('forum_id', sa.types.String(50), 
    25                 sa.ForeignKey(forums.c.slug), nullable=False), 
    26       ] 
      10 class Topic(meta.Base): 
      11     __tablename__ = 'topics' 
      12     slug = sa.Column("slug", sa.types.String(50), primary_key=True) 
      13     solved = sa.Column("solved", sa.types.Boolean, default=False) 
      14     locked = sa.Column("locked", sa.types.Boolean, default=False) 
      15     last_user_id = sa.Column("last_user_id", sa.types.Integer, nullable=True) 
      16     amount = sa.Column("amount", sa.types.Integer, default=0) 
      17     score = sa.Column("score", sa.types.Integer, default=0) 
      18     title = sa.Column("title", sa.types.String(255), nullable=False) 
      19     text = sa.Column("text", sa.types.Text, nullable=False) 
      20     format = sa.Column("format", sa.types.String(10), default="rst", nullable=False) 
      21     cooked = sa.Column("cooked", sa.types.Text, default="") 
      22     created = sa.Column("created", sa.DateTime, default=datetime.now) 
      23     modified = sa.Column("modified", sa.DateTime, default=datetime.now) 
      24               #onupdate=func.current_timestamp()) 
      25     user_id = sa.Column("user_id", sa.types.Integer, 
      26               sa.ForeignKey(users.c.id), nullable=False) 
      27     forum_id = sa.Column("forum_id", sa.types.String(50), 
      28               sa.ForeignKey(forums.c.slug), nullable=False) 
    27 29  
    28   topics = sa.Table('topics', meta.metadata, *[ 
    29       sa.Column("slug", sa.types.String(50), primary_key=True), 
    30       sa.Column("solved", sa.types.Boolean, default=False), 
    31       sa.Column("locked", sa.types.Boolean, default=False), 
    32       sa.Column('last_user_id', sa.types.Integer, nullable=True), 
    33       ] + common_fields()) 
      30     user=orm.relation(User, backref="topics") 
      31     forum=orm.relation(Forum, backref="childs") 
    34 32  
    35   class Topic(base.Topic): 
    36       """Topic object 
    37       """ 
      33     def slugify(self): 
      34         if not self.slug: 
      35             slug = self.title.replace(' ', '-') 
      36             slug = slug.lower() 
      37             self.slug = slug.encode('ascii', 'ignore') 
    38 38  
    39   posts = sa.Table('posts', meta.metadata, *[ 
    40       sa.Column("id", sa.types.Integer, primary_key=True), 
    41       ] + common_fields() + [ 
    42       sa.Column("order", sa.types.String(255), default='0'), 
    43       sa.Column("level", sa.types.Integer, default=0), 
    44       sa.Column('parent_id', sa.types.Integer, 
    45                 sa.ForeignKey('posts.id'), nullable=True), 
    46       sa.Column('topic_id', sa.types.Integer, 
    47                 sa.ForeignKey(topics.c.slug), nullable=False), 
    48       ]) 
      39 topics = Topic.__table__ 
    49 40  
    50   class Post(base.Post): 
    51       """Post object 
    52       """ 
      41 class Post(meta.Base): 
      42     __tablename__ = 'posts' 
      43     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      44     amount = sa.Column("amount", sa.types.Integer, default=0) 
      45     score = sa.Column("score", sa.types.Integer, default=0) 
      46     title = sa.Column("title", sa.types.String(255), nullable=False) 
      47     text = sa.Column("text", sa.types.Text, nullable=False) 
      48     format = sa.Column("format", sa.types.String(10), default="rst", nullable=False) 
      49     cooked = sa.Column("cooked", sa.types.Text, default="") 
      50     created = sa.Column("created", sa.DateTime, default=datetime.now) 
      51     modified = sa.Column("modified", sa.DateTime, default=datetime.now) 
      52               #onupdate=func.current_timestamp()) 
      53     user_id = sa.Column("user_id", sa.types.Integer, 
      54               sa.ForeignKey(users.c.id), nullable=False) 
      55     forum_id = sa.Column("forum_id", sa.types.String(50), 
      56               sa.ForeignKey(forums.c.slug), nullable=False) 
      57     order = sa.Column("order", sa.types.String(255), default="0") 
      58     level = sa.Column("level", sa.types.Integer, default=0) 
      59     parent_id = sa.Column("parent_id", sa.types.Integer, 
      60               sa.ForeignKey("posts.id"), nullable=True) 
      61     topic_id = sa.Column("topic_id", sa.types.Integer, 
      62               sa.ForeignKey(topics.c.slug), nullable=False) 
      63     user=orm.relation(User, backref="posts") 
      64     topic=orm.relation(Topic, backref="childs") 
    53 65  
    54   orm.mapper(Topic, topics, properties=dict( 
    55              user=orm.relation(User, backref='topics'), 
    56              forum=orm.relation(Forum, backref='childs'), 
    57             )) 
      66 Post.post=orm.relation(Post, backref="childs") 
    58 67  
    59   orm.mapper(Post, posts, properties=dict( 
    60              user=orm.relation(User, backref='posts'), 
    61              post=orm.relation(Post, backref='childs'), 
    62              topic=orm.relation(Topic, backref='childs'), 
    63             )) 
    64    
      68 posts = Post.__table__ 
  • PyBB/trunk/pybb/model/roles.py

    r1178 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7 from pybb.model.user import User 
    … …  
    10 9 from pybb.lib.roles import MEMBER 
    11 10  
    12   roles = sa.Table('roles', meta.metadata, 
    13       sa.Column("id", sa.types.Integer, primary_key=True), 
    14       sa.Column("role", sa.types.String(20), default=MEMBER), 
    15       sa.Column('created', sa.DateTime, default=datetime.now), 
    16       sa.Column('modified', sa.DateTime, default=datetime.now, 
    17                 onupdate=func.current_timestamp()), 
    18       sa.Column('user_id', sa.types.Integer, 
    19                 sa.ForeignKey('users.id'), nullable=False), 
    20       sa.Column('forum_id', sa.types.String(50), 
    21                 sa.ForeignKey('forums.slug'), nullable=True), 
    22       sa.Column('site_id', sa.types.Integer, 
    23                 sa.ForeignKey('sites.id'), default='0', nullable=True), 
    24       ) 
      11 class Role(meta.Base): 
      12     __tablename__ = 'roles' 
      13     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      14     role = sa.Column("role", sa.types.String(20), default=MEMBER) 
      15     created = sa.Column('created', sa.DateTime, default=datetime.now) 
      16     modified = sa.Column('modified', sa.DateTime, default=datetime.now, 
      17               onupdate=func.current_timestamp()) 
      18     user_id = sa.Column('user_id', sa.types.Integer, 
      19               sa.ForeignKey('users.id'), nullable=False) 
      20     forum_id = sa.Column('forum_id', sa.types.String(50), 
      21               sa.ForeignKey('forums.slug'), nullable=True) 
      22     site_id = sa.Column('site_id', sa.types.Integer, 
      23               sa.ForeignKey('sites.id'), default='0', nullable=True) 
    25 24  
    26   class Role(base.Base): 
    27       """Role object 
    28       """ 
      25     user=orm.relation(User, backref='roles') 
      26     forum=orm.relation(Forum, backref='roles') 
    29 27  
    30   orm.mapper(Role, roles, properties=dict( 
    31              user=orm.relation(User, backref='roles'), 
    32              forum=orm.relation(Forum, backref='roles'), 
    33             )) 
    34    
      28 roles = Role.__table__ 
  • PyBB/trunk/pybb/model/site.py

    r1162 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7  
    9   def color_fields(): 
    10       fields = [] 
    11       for color, default in ( 
    12           ('link_color', '#243B0B'), 
    13           ('even_background', '#F2F2F2'), 
    14           ('odd_background', '#E6E6E6'), 
    15           ('new_background', '#F5FBEF'), 
    16           ('toolbar_background', '#BDBDBD'), 
    17           ('border_color', 'black'), 
    18           ): 
    19           fields.append( 
    20               sa.Column(color, sa.types.String(10), default=default) 
    21               ) 
    22       return fields 
      8 class Site(meta.Base): 
      9     __tablename__ = 'sites' 
      10     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      11     title = sa.Column("title", sa.types.String(255), nullable=False) 
      12     cell_width = sa.Column("cell_width", sa.types.Integer, default=150) 
      13     link_color = sa.Column('link_color', 
      14                            sa.types.String(10), default='#243B0B') 
      15     even_background = sa.Column('even_background', 
      16                            sa.types.String(10), default='#F2F2F2') 
      17     odd_background = sa.Column('odd_background', 
      18                            sa.types.String(10), default='#E6E6E6') 
      19     new_background = sa.Column('new_background', 
      20                            sa.types.String(10), default='#F5FBEF') 
      21     toolbar_background = sa.Column('toolbar_background', 
      22                            sa.types.String(10), default='#BDBDBD') 
      23     border_color = sa.Column('border_color', 
      24                            sa.types.String(10), default='black') 
      25     css = sa.Column("css", sa.types.String(255), nullable=True) 
      26     created = sa.Column('created', sa.DateTime, default=datetime.now) 
      27     modified = sa.Column('modified', sa.DateTime, default=datetime.now, 
      28               onupdate=func.current_timestamp()) 
    23 29  
    24   sites = sa.Table('sites', meta.metadata, *[ 
    25       sa.Column("id", sa.types.Integer, primary_key=True), 
    26       sa.Column("title", sa.types.String(255), nullable=False), 
    27       sa.Column("cell_width", sa.types.Integer, default=150), 
    28       ] + color_fields() + [ 
    29       sa.Column("css", sa.types.String(255), nullable=True), 
    30       sa.Column('created', sa.DateTime, default=datetime.now), 
    31       sa.Column('modified', sa.DateTime, default=datetime.now, 
    32                 onupdate=func.current_timestamp()), 
    33       ]) 
    34 30  
    35   class Site(base.Slug): 
    36       """Site object 
    37       """ 
    38    
    39   orm.mapper(Site, sites) 
    40    
      31 sites = Site.__table__ 
  • PyBB/trunk/pybb/model/subscriptions.py

    r1138 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7  
    9   subscriptions = sa.Table('subscriptions', meta.metadata, 
    10       sa.Column("id", sa.types.Integer, primary_key=True), 
    11       sa.Column("topic_id", sa.types.String(50), default=''), 
    12       sa.Column("forum_id", sa.types.String(50), default=''), 
    13       sa.Column('user_id', sa.types.Integer, sa.ForeignKey('users.id')), 
    14       sa.Column('created', sa.DateTime, default=datetime.now), 
    15       sa.Column('modified', sa.DateTime, default=datetime.now, 
    16                 onupdate=func.current_timestamp()), 
    17       sa.UniqueConstraint("topic_id", "forum_id", "user_id", name="subscription"), 
    18       ) 
      8 class Subscription(meta.Base): 
      9     __tablename__ = 'subscriptions' 
      10     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      11     topic_id = sa.Column("topic_id", sa.types.String(50), nullable=True) 
      12     forum_id = sa.Column("forum_id", sa.types.String(50), default='') 
      13     user_id = sa.Column('user_id', sa.types.Integer, sa.ForeignKey('users.id')) 
      14     created = sa.Column('created', sa.DateTime, default=datetime.now) 
      15     modified = sa.Column('modified', sa.DateTime, default=datetime.now, 
      16               onupdate=func.current_timestamp()) 
      17     #sa.UniqueConstraint("topic_id", "forum_id", "user_id", name="subscription"), 
    19 18  
    20   class Subscription(base.Base): 
    21       """user subscription 
    22       """ 
    23    
    24   orm.mapper(Subscription, subscriptions) 
    25    
      19 subscriptions = Subscription.__table__ 
  • PyBB/trunk/pybb/model/user.py

    r1160 r1179  
    4 4 from sqlalchemy import orm 
    5 5 from sqlalchemy import func 
    6   from pybb.model import base 
    7 6 from pybb.model import meta 
    8 7 from pybb.lib.roles import MEMBER 
    9 8  
    10   users = sa.Table('users', meta.metadata, 
    11       sa.Column("id", sa.types.Integer, primary_key=True), 
    12       sa.Column("login", sa.types.String(255), nullable=False), 
    13       sa.Column("alias", sa.types.Unicode(255), nullable=True), 
    14       sa.Column("password", sa.types.String(255), nullable=True), 
    15       sa.Column("email", sa.types.String(255), nullable=False), 
    16       sa.Column("avatar", sa.types.String(255), nullable=True), 
    17       sa.Column("signature", sa.types.Text, nullable=True), 
    18       sa.Column("format", sa.types.String(20), default='rst', nullable=False), 
    19       sa.Column("auto_subscribe", sa.types.Boolean, default=False), 
    20       sa.Column("banned", sa.types.Boolean, default=False), 
    21       sa.Column('created', sa.DateTime, default=datetime.now), 
    22       sa.Column('modified', sa.DateTime, default=datetime.now, 
    23                 onupdate=func.current_timestamp()), 
    24       ) 
      9 class User(meta.Base): 
      10     __tablename__ = 'users' 
      11     id = sa.Column("id", sa.types.Integer, primary_key=True) 
      12     login = sa.Column("login", sa.types.String(255), nullable=False) 
      13     alias = sa.Column("alias", sa.types.Unicode(255), nullable=True) 
      14     password = sa.Column("password", sa.types.String(255), nullable=True) 
      15     email = sa.Column("email", sa.types.String(255), nullable=False) 
      16     avatar = sa.Column("avatar", sa.types.String(255), nullable=True) 
      17     signature = sa.Column("signature", sa.types.Text, nullable=True) 
      18     format = sa.Column("format", sa.types.String(20), default='rst', nullable=False) 
      19     auto_subscribe = sa.Column("auto_subscribe", sa.types.Boolean, default=False) 
      20     banned = sa.Column("banned", sa.types.Boolean, default=False) 
      21     created = sa.Column("created", sa.DateTime, default=datetime.now) 
      22     modified = sa.Column("modified", sa.DateTime, default=datetime.now, 
      23               onupdate=func.current_timestamp()) 
    25 24  
    26   class User(base.Base): 
    27       """User object 
    28       """ 
    29    
    30   orm.mapper(User, users) 
    31    
      25 users = User.__table__ 
  • PyBB/trunk/pybb/plugins/auth/basic.py

    r1161 r1179  
    12 12     def authenticate(self, environ, identity): 
    13 13         from pybb.lib import sql 
    14           from pybb.model import User 
      14         from pybb.model.tables import User 
    15 15         user = sql.select([User.login, User.password], 
    16 16                            sql.and_(User.login==identity['login'], 
  • PyBB/trunk/pybb/plugins/userdata/basic.py

    r1161 r1179  
    2 2 import logging 
    3 3 from pybb.lib import sql 
    4   from pybb.model import User 
    5   from pybb.model import users 
      4 from pybb.model.tables import User 
      5 from pybb.model.tables import users 
    6 6 from beaker.cache import CacheManager 
    7 7 from zope.interface import implements 
  • PyBB/trunk/pybb/plugins/userdata/ldapdata.py

    r1161 r1179  
    3 3 import logging 
    4 4 from pybb.lib import sql 
    5   from pybb.model import User 
    6   from pybb.model import users 
      5 from pybb.model.tables import User 
      6 from pybb.model.tables import users 
    7 7 from beaker.cache import CacheManager 
    8 8 from zope.interface import implements 
  • PyBB/trunk/pybb/scripts/notifications.py

    r1140 r1179  
    4 4 import logging 
    5 5 import smtplib 
    6   from pybb import model 
      6 import pybb.model.tables as model 
    7 7 from pybb import scripts 
    8 8 from pybb.lib import sql 
  • PyBB/trunk/pybb/templates/view.mako

    r1173 r1179  
    1 1 <%! 
    2 2 from pybb.lib import filters 
    3   from pybb.model import Topic 
      3 from pybb.model.tables import Topic 
    4 4 def is_topic(record): 
    5 5     return isinstance(record, Topic) 
  • PyBB/trunk/pybb/tests/functional/test_auth.py

    r1104 r1179  
    1 1 from pybb.tests import * 
    2   from pybb.lib.auth import PyBBAuthenticatorPlugin 
      2 from pybb.plugins.auth.basic import PyBBAuthenticatorPlugin 
    3 3  
    4 4 class TestAuth(TestController): 
  • PyBB/trunk/pybb/tests/functional/test_notifications.py

    r1138 r1179  
    3 3 from pybb.tests import * 
    4 4 from pybb.lib import sql 
    5   from pybb import model 
      5 from pybb.model.tables import Notification 
    6 6 import pylons 
    7 7  
    … …  
    9 9  
    10 10     def test_notification(self): 
    11           assert sql.count(model.Notification.id) == 2 
      11         assert sql.count(Notification.id) == 2 
    12 12  
    13 13         conf = pylons.config.copy() 
    … …  
    26 26         assert len(users[1]) == 1, users 
    27 27  
    28           assert sql.count(model.Notification.id) == 0 
      28         assert sql.count(Notification.id) == 0 
    29 29  
  • PyBB/trunk/pybb/tests/functional/test_post.py

    r1153 r1179  
    1 1 from pybb.tests import * 
    2   from pybb import model 
      2 import pybb.model.tables as model 
    3 3 from pybb.model import meta 
    4 4  
  • PyBB/trunk/pybb/websetup.py

    r1162 r1179  
    31 31     from pybb.model import meta 
    32 32     meta.metadata.bind = meta.engine 
      33     meta.Base.metadata = meta.metadata 
    33 34  
    34 35     # Create the tables if they aren't there already 
    … …  
    36 37  
    37 38     # Create basic data 
    38       from pybb import model 
      39     import pybb.model.tables as model 
    39 40  
    40 41     meta.Session.save(model.Site(id=0, title='PyBB'))