[Checkins]
SVN: grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/
Fix unicode issue for kwargs; make (SA)session acccessible
Jasper Spaans
jspaans at thehealthagency.com
Sat May 3 16:04:58 EDT 2008
Log message for revision 86282:
Fix unicode issue for kwargs; make (SA)session acccessible
Changed:
U grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/__init__.py
U grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/db.py
U grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/schema.py
-=-
Modified: grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/__init__.py
===================================================================
--- grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/__init__.py 2008-05-03 19:54:20 UTC (rev 86281)
+++ grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/__init__.py 2008-05-03 20:04:58 UTC (rev 86282)
@@ -2,7 +2,7 @@
from megrok.rdb.components import Model, Container
from megrok.rdb.schema import Fields
-from megrok.rdb.db import Database
+from megrok.rdb.db import Database, session
from megrok.rdb.directive import key
Modified: grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/db.py
===================================================================
--- grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/db.py 2008-05-03 19:54:20 UTC (rev 86281)
+++ grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/db.py 2008-05-03 20:04:58 UTC (rev 86282)
@@ -1,5 +1,7 @@
import grok
+from zope import component
+
from collective.lead import Database as DatabaseBase
from collective.lead.interfaces import IDatabase
@@ -26,3 +28,6 @@
def setup(self, metadata):
pass
+
+def session(name='megrok.rdb'):
+ return component.getUtility(IDatabase, name).session
Modified: grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/schema.py
===================================================================
--- grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/schema.py 2008-05-03 19:54:20 UTC (rev 86281)
+++ grokapps/rdbexample/trunk/megrok.rdb/src/megrok/rdb/schema.py 2008-05-03 20:04:58 UTC (rev 86282)
@@ -12,17 +12,18 @@
from zope.schema import TextLine
def Fields(model):
- return grok.Fields(IInterface(model))
+ return grok.Fields(schema_from_model(model))
- at grok.adapter(Model)
- at grok.implementer(IInterface)
def schema_from_model(model):
table = model.__table__
bases = (Interface,)
attrs = {}
for i, column in enumerate(table.columns):
+ if len(column.foreign_keys) or column.primary_key:
+ continue
field = IField(column.type)
- field.__name__ = field.title = unicode(column.name)
+ field.__name__ = str(column.name)
+ field.title = unicode(column.name)
field.required = not column.nullable
field.order = i
attrs[column.name] = field
More information about the Checkins
mailing list