@@ -37,6 +37,15 @@ def __declare_last__(cls):
37
37
"not a valid email address" )
38
38
39
39
40
+ # acct_tx_table = db.Table('association', db.Model.metadata,
41
+ # db.Column('acct_id',
42
+ # db.Integer,
43
+ # db.ForeignKey('account.id')),
44
+ # db.Column('tx_id',
45
+ # db.Integer,
46
+ # db.ForeignKey('transaction.id')))
47
+
48
+
40
49
class Transaction (db .Model ):
41
50
''' A transaction moves amounts between accounts. When a transaction
42
51
occurs, an account must be debited and an account must be credited.
@@ -70,6 +79,12 @@ class Transaction(db.Model):
70
79
db .ForeignKey ('user.id' ),
71
80
nullable = False )
72
81
82
+ # db.ForeignKeyConstraint(['payer_id'], ['account.id'],
83
+ # use_alter=True, name='fk_acct_pay')
84
+
85
+ # db.ForeignKeyConstraint(['recvr_id'], ['account.id'],
86
+ # use_alter=True, name='fk_acct_rec')
87
+
73
88
ccy = db .relationship ('Currency' )
74
89
payer = db .relationship ('Account' , foreign_keys = [payer_id ])
75
90
recvr = db .relationship ('Account' , foreign_keys = [recvr_id ])
@@ -93,20 +108,16 @@ class Account(db.Model):
93
108
94
109
id: unique Id
95
110
name: name or nmenonic of account
96
- tx_ids: transactions associated with account. Must link to pay/rec to
97
- get debit or credit info
98
111
ccy_id: account denomination e.g. USD or BTC.
99
112
'''
100
113
101
114
id = db .Column (db .Integer , primary_key = True )
102
115
name = db .Column (db .String (120 ), unique = True , nullable = False )
103
- tx_ids = db .Column (db .Integer , db .ForeignKey ('transaction.id' ))
104
116
ccy_id = db .Column (db .Integer , db .ForeignKey ('currency.id' ))
105
117
106
118
@classmethod
107
119
def __declare_last__ (cls ):
108
120
ValidateString (Account .name , False , True )
109
- ValidateInteger (Account .tx_ids , False , True )
110
121
ValidateInteger (Account .ccy_id , False , True )
111
122
112
123
0 commit comments