KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
This may seems rather argumentative, but I just went through SQLAlchemy's ORM tutorial and ended up with the following code: from sqlalchemy import create_engine from sqlalchemy import Table, Column, Integer, String, MetaData, ForeignKey from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker engine = create_engine('sqlite:///:memory:', echo=True) metadata = MetaData() users_table = Table('users', metadata, Column('id', Integer, primary_key=True), Column('name', String), Column('fullname', String), Column('password', String) ) metadata.create_all(engine) Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String) fullname = Column(String) password = Column(String) def __init__(self, name, fullname, password): self.name = name self.fullname = fullname self.password = password def __repr__(self): return "<User('%s','%s', '%s')>" % (self.name, self.fullname, self.password) users_table = User.__table__ metadata = Base.metadata Session = sessionmaker(bind=engine) Session = sessionmaker() Session.configure(bind=engine) # once engine is available session = Session() # actually using the ORM isn't too bad.. ed_user = User('ed', 'Ed Jones', 'edspassword') session.add(ed_user) our_user = session.query(User).filter_by(name='ed').first() print our_user session.add_all([ User('wendy', 'Wendy Williams', 'foobar'), User('mary', 'Mary Contrary', 'xxg527'), User('fred', 'Fred Flinstone', 'blah')]) ed_user.password = 'f8s7ccs' print session.dirty print session.new session.commit() for instance in session.query(User).order_by(User.id): print instance.name, instance.fullname for name, fullname in session.query(User.name, User.fullname): print name, fullname </c
Tags (comma-separated)
Save Edits
Cancel