[BangPypers] SQLAlchemy and 'non-trivial' default values for a column
karra.etc at gmail.com
Tue Feb 12 02:43:51 CET 2013
On Wed, Feb 6, 2013 at 12:05 PM, Dhruv Baldawa <dhruvbaldawa at gmail.com>wrote:
> OK I misread. Let me see if I understood your problem correctly.
> 1. All the consultations will be stored in that table.
> 2. When you have a Consultation object, you need a `consultation_count`
> property for the number of consultation for that day.
> So, this should work now, according to me:
> def generate_consultation_id(date):
> return Consultation.query.filter_by(data=data).count() + 1
I assume you meant 'date=date' in the method body.
> class Consultation(Base):
> cid = Column(Integer, default=generate_consultation_id)
> This should work, according to me. The function is called while adding the
> id to the database.
Thanks a lot. It does appear to work. Just a clarification - I have two
sessions initialized - one for a demo database and one for a production
database and allow the users to switch between the two (for staff training,
or feature exploration purposes). I tested it briefly and the counts are
correctly incremented for whichever session is currently active. Just
wanted to confirm that behaviour will be consistent.
More information about the BangPypers