def run_testsuite(db_name): import quick_orm.testsuite.fixtures as fixtures global db db_str = db_strs[db_name] db = Database(db_str) db.drop_tables() db.create_tables() db.load_data(fixtures) from quick_orm.testsuite.core import CoreTestCase test_suite = unittest.TestSuite() test_suite.addTest(unittest.makeSuite(CoreTestCase)) unittest.TextTestRunner(verbosity=1).run(test_suite)
@Database.many_to_one(Post) class Comment(Post): pass @Database.many_to_many(Post) class Tag: name = Column(String(70)) Database.register() if __name__ == '__main__': db = Database('sqlite://') db.create_tables() user1 = User(name='Tyler Long') user2 = User(name='Peter Lau') tag1 = Tag(name='quick_orm') tag2 = Tag(name='nice') question = Question(user=user1, title='What is quick_orm?', content='What is quick_orm?', tags=[ tag1, ]) question2 = Question(user=user1, title='Have you tried quick_orm?',
from quick_orm.core import Database from sqlalchemy import Column, String __metaclass__ = Database.DefaultMeta class User: name = Column(String(30)) @Database.one_to_one(User) class Contact: email = Column(String(70)) address = Column(String(70)) Database.register() if __name__ == '__main__': db = Database('sqlite://') db.create_tables() contact = Contact(email = '*****@*****.**', address = 'Shenzhen, China') user = User(name = 'Tyler Long', contact = contact) db.session.add_then_commit(user) user = db.session.query(User).get(1) print 'User:'******'Email:', user.contact.email print 'Address:', user.contact.address
from quick_orm.core import Database from sqlalchemy import Column, String __metaclass__ = Database.DefaultMeta class User: name = Column(String(30)) Database.register() if __name__ == '__main__': db = Database('sqlite://') # database urls: http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls db.create_tables() # create tables, you don't have to write any SQL. user = User(name = 'Hello World') db.session.add_then_commit(user) # commit user to database. user = db.session.query(User).get(1) print 'My name is', user.name print 'created_at', user.created_at # created_at and updated_at timestamps are added automatically. print 'updated_at', user.updated_at user.name = 'Tyler Long' db.session.commit() # commit changes to database. print 'My name is', user.name print 'created_at', user.created_at print 'updated_at', user.updated_at
from quick_orm.core import Database from sqlalchemy import Column, String __metaclass__ = Database.DefaultMeta class User: name = Column(String(30)) Database.register() if __name__ == '__main__': db1 = Database('sqlite://') db1.create_tables() db2 = Database('sqlite://') db2.create_tables() user1 = User(name = 'user in db1') user2 = User(name = 'user in db2') db1.session.add_then_commit(user1) db2.session.add_then_commit(user2) print 'I am', db1.session.query(User).get(1).name print 'I am', db2.session.query(User).get(1).name
from quick_orm.core import Database from sqlalchemy import Column, String __metaclass__ = Database.DefaultMeta class User: name = Column(String(30)) Database.register() if __name__ == '__main__': db1 = Database('sqlite://') db1.create_tables() db2 = Database('sqlite://') db2.create_tables() user1 = User(name='user in db1') user2 = User(name='user in db2') db1.session.add_then_commit(user1) db2.session.add_then_commit(user2) print 'I am', db1.session.query(User).get(1).name print 'I am', db2.session.query(User).get(1).name
from quick_orm.core import Database from sqlalchemy import Column, String __metaclass__ = Database.DefaultMeta class User: name = Column(String(30)) Database.register() if __name__ == '__main__': db = Database( 'sqlite://' ) # database urls: http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls db.create_tables() # create tables, you don't have to write any SQL. user = User(name='Hello World') db.session.add_then_commit(user) # commit user to database. user = db.session.query(User).get(1) print 'My name is', user.name print 'created_at', user.created_at # created_at and updated_at timestamps are added automatically. print 'updated_at', user.updated_at user.name = 'Tyler Long' db.session.commit() # commit changes to database. print 'My name is', user.name print 'created_at', user.created_at print 'updated_at', user.updated_at