[Checkins] SVN: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/ Corrected handling of createData.

Jürgen Kartnaller juergen at kartnaller.at
Sat Jan 20 05:40:07 EST 2007


Log message for revision 72120:
  Corrected handling of createData.
  Now it is necessary to explicitly provide the engine in which to create the table.
  

Changed:
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/README.txt
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/datamanager.py
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/intid/keyreference.txt
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metaconfigure.py
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metadirectives.py
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/TRANSACTION.txt
  U   z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/test_container.py

-=-
Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/README.txt
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/README.txt	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/README.txt	2007-01-20 10:40:03 UTC (rev 72120)
@@ -79,7 +79,7 @@
 If no session is created then the table creation is deffered to the next
 call to zalchemy.getSession.
 
-  >>> z3c.zalchemy.createTable('table3')
+  >>> z3c.zalchemy.createTable('table3', '')
 
 Note that the transaction handling is done inside Zope.
 
@@ -169,7 +169,7 @@
 This time we do it inside of a session.
 
   >>> z3c.zalchemy.assignTable('bTable', 'engine2')
-  >>> z3c.zalchemy.createTable('bTable')
+  >>> z3c.zalchemy.createTable('bTable', 'engine2')
 
   >>> b = B()
   >>> session().save(b)

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/datamanager.py
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/datamanager.py	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/datamanager.py	2007-01-20 10:40:03 UTC (rev 72120)
@@ -109,7 +109,7 @@
     _assignClass(class_, engine)
 
 
-def createTable(table, engine=''):
+def createTable(table, engine):
     _tablesToCreate.append((table, engine))
     _createTables()
 
@@ -137,15 +137,6 @@
 
 
 def _doCreateTable(table, engine):
-    for t, tengine in _tableToEngine.iteritems():
-        if t==table:
-            t = metadata.getTable(engine, table, True)
-            util = getUtility(IAlchemyEngineUtility, name=tengine)
-            try:
-                util.getEngine().create(t)
-            except:
-                pass
-            return
     util = getUtility(IAlchemyEngineUtility, name=engine)
     t = metadata.getTable(engine, table, True)
     try:
@@ -155,15 +146,6 @@
 
 
 def dropTable(table, engine=''):
-    for t, tengine in _tableToEngine.iteritems():
-        if t==table:
-            t = metadata.getTable(engine, table, True)
-            util = getUtility(IAlchemyEngineUtility, name=tengine)
-            try:
-                util.getEngine().drop(t)
-            except:
-                pass
-            return
     util = getUtility(IAlchemyEngineUtility, name=engine)
     t = metadata.getTable(engine, table, True)
     try:

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/intid/keyreference.txt
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/intid/keyreference.txt	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/intid/keyreference.txt	2007-01-20 10:40:03 UTC (rev 72120)
@@ -30,7 +30,7 @@
   >>> sqlalchemy.mapper(A, aTable) is not None
   True
   
-  >>> z3c.zalchemy.createTable('aTable')
+  >>> z3c.zalchemy.createTable('aTable', '')
 
 Start a transaction.
 

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metaconfigure.py
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metaconfigure.py	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metaconfigure.py	2007-01-20 10:40:03 UTC (rev 72120)
@@ -33,6 +33,6 @@
 def connectClass(_context, class_, engine):
     z3c.zalchemy.assignClass(class_, engine)
 
-def createTable(_context, table):
-    z3c.zalchemy.createTable(table)
+def createTable(_context, table, engine):
+    z3c.zalchemy.createTable(table, engine)
 

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metadirectives.py
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metadirectives.py	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/metadirectives.py	2007-01-20 10:40:03 UTC (rev 72120)
@@ -86,4 +86,12 @@
             description = u'The name of the table.',
             required = True,
             )
+    engine = schema.TextLine(
+            title = u'Engine',
+            description = u"""
+                The name of an engine in which the table should be
+                created.
+                """,
+            required = True,
+            )
 

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/TRANSACTION.txt
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/TRANSACTION.txt	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/TRANSACTION.txt	2007-01-20 10:40:03 UTC (rev 72120)
@@ -40,7 +40,7 @@
 
   >>> session = z3c.zalchemy.getSession()
 
-  >>> z3c.zalchemy.createTable('table2')
+  >>> z3c.zalchemy.createTable('table2', '')
 
 Multiple calls to getSession return the same session :
 

Modified: z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/test_container.py
===================================================================
--- z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/test_container.py	2007-01-20 10:00:47 UTC (rev 72119)
+++ z3c.zalchemy/branches/engine-metadata/src/z3c/zalchemy/tests/test_container.py	2007-01-20 10:40:03 UTC (rev 72120)
@@ -53,8 +53,8 @@
 def setUp(test):
     setup.placefulSetUp()
     z3c.zalchemy.testing.placefulSetUp(test)
-    z3c.zalchemy.createTable('singlePrimaryKeyTable')
-    z3c.zalchemy.createTable('multiPrimaryKeyTable')
+    z3c.zalchemy.createTable('singlePrimaryKeyTable', '')
+    z3c.zalchemy.createTable('multiPrimaryKeyTable', '')
 
 def tearDown(test):
     z3c.zalchemy.testing.placefulTearDown(test)



More information about the Checkins mailing list