you're missing:

   session.add(b)



On Nov 13, 2010, at 7:11 AM, STefano wrote:

> import os
> from sqlalchemy import types
> from sqlalchemy import create_engine, Column, Integer, String,
> ForeignKey
> from sqlalchemy.orm import sessionmaker, scoped_session
> from sqlalchemy import create_engine
> 
> from sqlalchemy.ext.declarative import declarative_base
> 
> 
> class MyType(types.TypeDecorator):
>    '''Copied from sa docs
>    '''
>    impl = types.Unicode
> 
>    def process_bind_param(self, value, dialect):
>        print "...process_bind_param"
>        return "PREFIX:" + value
> 
>    def process_result_value(self, value, dialect):
>        print "...process_result_value"
>        return value
> #        return value[7:]
> 
>    def copy(self):
>        print "...copy"
>        return MyType(self.impl.length)
> 
> 
> Base = declarative_base()
> 
> 
> class TestBase(Base):
>    __tablename__ = "testbase"
> 
>    id = Column("id", types.Integer, primary_key=True)
>    file = Column("file", MyType, nullable = False )
> 
> if __name__ == '__main__':
> 
>    engine = create_engine('sqlite://', echo=False)
>    Base.metadata.create_all(engine)
> 
>    session = sessionmaker(engine)()
> 
>    b = TestBase(file=u"value")
>    session.commit()
>    print b.file

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalch...@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