I've placed a recipe for this on the wiki at 
http://www.sqlalchemy.org/trac/wiki/UsageRecipes/LogVersions 
  .


On Mar 25, 2009, at 10:12 AM, Suha Onay wrote:

>
> Hi,
>
> I am using sqlalchemy for a while in a project.
> The project has lots of models like User:
> ------------------------------------------------------------------------------
> from mcmodel import MCModel
>
> Base = declarative_base()
>
> class User(MCModel, Base):
>    __tablename__ = 'users'
>
>    id = sa.Column(sa.Integer, primary_key=True)
>    name = sa.Column(sa.Unicode(12))
>    fullname = sa.Column(sa.Unicode(40))
>    password = sa.Column(sa.Unicode(20))
>    active = sa.Column(sa.Boolean())
>    type = sa.Column(sa.SmallInteger())
>    note = sa.Column(sa.Text())
>    date_created = sa.Column(sa.Date())
> ------------------------------------------------------------------------------
> All of these models inherit from MCModel (nothing doing special).
>
> I want to save all the changes done to a user in a seperate db table
> like "_hist_users".
> The new inserts do not need to be in the hist table.
> When a user is updated, the old data of the user will be copied to the
> hist table with a column declaring this is an update operation.
> When a user is deleted, the old data of the user will be moved to the
> hist table with a column declaring this is a delete operation.
> With these operations, it is possible to know who modified what and
> when.
>
> How can i achieve in this?
> By modifying the MCModel to enable all the models aware of history
> backup?
> Or using class sqlalchemy.orm.interfaces.MapperExtension.after_update
> methods? (i do not know how)
> Or anything else?
>
> Thanks in advance.
>
> Suha
>
>
>
>
>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to