Changeset 115

Show
Ignore:
Timestamp:
04/13/08 21:36:57 (5 months ago)
Author:
njriley
Message:

allow Transaction.item access

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • sucrose/trunk/python/mysql/db.py

    r99 r115  
    2121                 Column('balance', Numeric)) 
    2222 
    23 _transactions = Table('vending_transactions', _acm_Base.metadata, 
    24                       Column('transaction_id', Integer, primary_key=True, autoincrement=True), 
    25                       Column('user_id', MSInteger(unsigned=True), ForeignKey(_users.c.uid)), 
    26                       Column('item_id', Integer), 
    27                       Column('cost', Numeric(4, 2))) 
    28  
    2923_items = Table('items', _sucrose_Base.metadata, 
    3024               Column('item_id', Integer, primary_key=True, autoincrement=True), 
    3125               Column('num_consumed', Integer), 
    3226               Column('name', String(255)), 
    33                                        Column('caffeine', Integer), 
    34                                        Column('calories', Integer), 
    35                                        Column('sugar', Integer), 
    36                                        Column('carbohydrates', Integer), 
    37                                        Column('fiber', Integer), 
    38                                        Column('sodium', Integer), 
    39                                        Column('fat', Integer), 
    40                                        Column('saturated_fat', Integer), 
    41                                        Column('protein', Integer), 
    42                                        Column('cholesterol', Integer)) 
     27               Column('caffeine', Integer), 
     28               Column('calories', Integer), 
     29               Column('sugar', Integer), 
     30               Column('carbohydrates', Integer), 
     31               Column('fiber', Integer), 
     32               Column('sodium', Integer), 
     33               Column('fat', Integer), 
     34               Column('saturated_fat', Integer), 
     35               Column('protein', Integer), 
     36               Column('cholesterol', Integer)) 
    4337 
    4438_trays = Table('trays', _sucrose_Base.metadata, 
     
    5044               Column('machine', MSEnum("'caffeine'", "'sucrose'"))) 
    5145 
     46_transactions = Table('vending_transactions', _acm_Base.metadata, 
     47                      Column('transaction_id', Integer, primary_key=True, autoincrement=True), 
     48                      Column('user_id', MSInteger(unsigned=True), ForeignKey(_users.c.uid)), 
     49                      Column('item_id', Integer, ForeignKey(_items.c.item_id)), 
     50                      Column('cost', Numeric(4, 2))) 
     51 
    5252class Vending(_acm_Base): __table__ = _vending 
    5353class User(object): balance = association_proxy('vending', 'balance') 
    5454mapper(User, _users, properties={'vending': relation(Vending, uselist=False, backref='user')}) 
    5555 
    56 class Transaction(_acm_Base): __table__ = _transactions 
    5756class Item(_sucrose_Base): __table__ = _items 
    5857class Tray(object): num_consumed = association_proxy('item', 'num_consumed') 
    5958mapper(Tray, _trays, properties={'item': relation(Item, uselist=False)}) 
     59class Transaction(object): item_name = association_proxy('item', 'name') 
     60mapper(Transaction, _transactions, properties={'item': relation(Item, uselist=False)}) 
     61 
    6062 
    6163_Session = sessionmaker(transactional=False, autoflush=False, twophase=True)