The version is ok: 0.5.3
The problem is I don't know how to do the unit tests: no tests package.
from tests import eq_, Comparable

How can i do the unit tests?

Suha




On Thu, Mar 26, 2009 at 19:04, Michael Bayer <[email protected]> wrote:
>
> not sure.  make sure you're on 0.5.3.   do the unit tests included with
> the recipe pass ?
>
>
> Suha Onay wrote:
>> Thanks for the recipe.I faced with an error.
>>
>> The model is now:
>> ------------------------------------------------------------------------------
>> from history_meta import VersionedMeta
>>
>> Base = declarative_base(metaclass=VersionedMeta)
>>
>> class User(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())
>> ------------------------------------------------------------------------------
>> Session = sessionmaker(bind=engine, autocommit=False, autoflush=True,
>> expire_on_commit=False, extension=VersionedListener())
>> ------------------------------------------------------------------------------
>>
>> When inserting a new user, the error occurs:
>> sqlite3: <class 'sqlalchemy.exc.IntegrityError'> -=> ('(IntegrityError)
>> users.version may not be NULL',)
>> postgre: <class 'sqlalchemy.exc.IntegrityError'> -=> ('(IntegrityError)
>> null
>> value in column "version" violates not-null constraint\n',)
>>
>> The code in history_meta creates the column version with default value 1:
>> cls.version = Column('version', Integer, default=1, nullable=False)
>>
>> What is the reason?
>> Thanks.
>>
>> Suha
>>
>>
>>
>> On Wed, Mar 25, 2009 at 17:17, Michael Bayer
>> <[email protected]>wrote:
>>
>>>
>>> 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 [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to