sqlobject-cvs Mailing List for SQLObject (Page 89)
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
(9) |
Apr
(74) |
May
(29) |
Jun
(16) |
Jul
(28) |
Aug
(10) |
Sep
(57) |
Oct
(9) |
Nov
(29) |
Dec
(12) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(7) |
Feb
(14) |
Mar
(6) |
Apr
(3) |
May
(12) |
Jun
(34) |
Jul
(9) |
Aug
(29) |
Sep
(22) |
Oct
(2) |
Nov
(15) |
Dec
(52) |
| 2005 |
Jan
(47) |
Feb
(78) |
Mar
(14) |
Apr
(35) |
May
(33) |
Jun
(16) |
Jul
(26) |
Aug
(63) |
Sep
(40) |
Oct
(96) |
Nov
(96) |
Dec
(123) |
| 2006 |
Jan
(159) |
Feb
(144) |
Mar
(64) |
Apr
(31) |
May
(88) |
Jun
(48) |
Jul
(16) |
Aug
(64) |
Sep
(87) |
Oct
(92) |
Nov
(56) |
Dec
(76) |
| 2007 |
Jan
(94) |
Feb
(103) |
Mar
(126) |
Apr
(123) |
May
(85) |
Jun
(11) |
Jul
(130) |
Aug
(47) |
Sep
(65) |
Oct
(70) |
Nov
(12) |
Dec
(11) |
| 2008 |
Jan
(30) |
Feb
(55) |
Mar
(88) |
Apr
(20) |
May
(50) |
Jun
|
Jul
(38) |
Aug
(1) |
Sep
(9) |
Oct
(5) |
Nov
(6) |
Dec
(39) |
| 2009 |
Jan
(8) |
Feb
(16) |
Mar
(3) |
Apr
(33) |
May
(44) |
Jun
(1) |
Jul
(10) |
Aug
(33) |
Sep
(74) |
Oct
(22) |
Nov
|
Dec
(15) |
| 2010 |
Jan
(28) |
Feb
(22) |
Mar
(46) |
Apr
(29) |
May
(1) |
Jun
(1) |
Jul
(27) |
Aug
(8) |
Sep
(5) |
Oct
(33) |
Nov
(24) |
Dec
(41) |
| 2011 |
Jan
(4) |
Feb
(12) |
Mar
(35) |
Apr
(29) |
May
(19) |
Jun
(16) |
Jul
(32) |
Aug
(25) |
Sep
(5) |
Oct
(11) |
Nov
(21) |
Dec
(12) |
| 2012 |
Jan
(3) |
Feb
(4) |
Mar
(20) |
Apr
(4) |
May
(25) |
Jun
(13) |
Jul
|
Aug
|
Sep
(2) |
Oct
(25) |
Nov
(9) |
Dec
(1) |
| 2013 |
Jan
(6) |
Feb
(8) |
Mar
|
Apr
(10) |
May
(31) |
Jun
(7) |
Jul
(18) |
Aug
(33) |
Sep
(4) |
Oct
(16) |
Nov
|
Dec
(27) |
| 2014 |
Jan
(2) |
Feb
|
Mar
|
Apr
(11) |
May
(39) |
Jun
(8) |
Jul
(11) |
Aug
(4) |
Sep
|
Oct
(27) |
Nov
|
Dec
(71) |
| 2015 |
Jan
(17) |
Feb
(47) |
Mar
(33) |
Apr
|
May
|
Jun
(9) |
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(8) |
| 2016 |
Jan
(4) |
Feb
(4) |
Mar
|
Apr
|
May
(12) |
Jun
(7) |
Jul
(9) |
Aug
(31) |
Sep
(8) |
Oct
(3) |
Nov
(15) |
Dec
(1) |
| 2017 |
Jan
(13) |
Feb
(7) |
Mar
(14) |
Apr
(8) |
May
(10) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(8) |
Nov
(4) |
Dec
(5) |
| 2018 |
Jan
(2) |
Feb
(8) |
Mar
|
Apr
(4) |
May
|
Jun
(6) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
(1) |
Feb
(16) |
Mar
(1) |
Apr
(3) |
May
(5) |
Jun
(1) |
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
(3) |
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
(2) |
| 2021 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
(4) |
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(3) |
Sep
(2) |
Oct
(2) |
Nov
(4) |
Dec
|
| 2024 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(9) |
| 2025 |
Jan
|
Feb
(4) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(2) |
Dec
(2) |
|
From: <sub...@co...> - 2007-07-05 15:46:22
|
Author: novalis
Date: 2007-07-05 09:46:14 -0600 (Thu, 05 Jul 2007)
New Revision: 2729
Modified:
SQLObject/trunk/sqlobject/main.py
Log:
call row created postfuncs
Modified: SQLObject/trunk/sqlobject/main.py
===================================================================
--- SQLObject/trunk/sqlobject/main.py 2007-07-02 14:41:59 UTC (rev 2728)
+++ SQLObject/trunk/sqlobject/main.py 2007-07-05 15:46:14 UTC (rev 2729)
@@ -1273,8 +1273,10 @@
post_funcs = []
kw = dict([('class',self.__class__),('id',id)])
self.sqlmeta.send(events.RowCreatedSignal, kw, post_funcs)
+
+ for func in post_funcs:
+ func(self)
-
def _SO_getID(self, obj):
return getID(obj)
|
|
From: Ed D. <rf...@ro...> - 2007-07-05 08:53:09
|
|
From: Rodney N. <ht...@bn...> - 2007-07-04 19:27:12
|
ERMX Continues To Expand As Stock Climbs Up 16.6%! EntreMetrix Inc. (ERMX) $0.21 UP 16.6% ERMX announced further expansion with K-9 Genetics. Healthy and Premium dog foods grossed $3.6 Billion in 2006, up from $1.9 billion in previous years. Read up on ERMX over the holiday, we think you will see even more fireworks on Thursday morning! within many many many ! The most valuable commercial fish of the region is the mammoth pirarucu, marketed primarily in a dried salted form. com and from bookstores. The group said the issue needs further study. In Brazil Controversial Orkut Pages Disappear Press Freedom Falls Big in the US. Rodriguez said Venezuela remains committed to becoming a full member of Mercosur. It will engender hope for millions of people. I am a true believer. By the World Famous Brazilian INjustice dept and by the Brazilian Supreme Court of INjustice ! Brazil's Landless Break Up with Lula and Call Him T Many dishes feature fish, a basic dietary component in the north. With a Reality Like Ours Who Needs Yellow Journalism in Brazil? WITH NOOOOOOO FANFARE. It is the coveted catch of fly-fishermen who are beginning to discover the thrills of angling for it in the Amazon basin. This globally produced vehicle was donated to the International Red Cross. In Brazil Controversial Orkut Pages Disappear Press Freedom Falls Big in the US. By the middle of the eighteenth century there were about fifty settlements along the river banks. Even today some of these fruits are unknown in other regions of the country, particularly in the south. He is scheduled to visit Brazil, Chile and Uruguay, meeting with the presidents of all three countries as well as Finance ministers and local business leaders. Pupunha, which has yellow, orange-red or green skin when ripe, is usually sold with the fruit still in clusters on the stems. According to Cita, the conflicts in the region have been aggravated because Funai have not carried out the requests for demarcation of the land of the Borari community in Nova Olinda. Or you're just another fool? By the middle of the eighteenth century there were about fifty settlements along the river banks. Chavez was absent from the latest Mercosur presidential summit which took place this week in Paraguay. FAM Disease Didn't Hurt Business. Caju, or cashew apple, is a red or yellow fruit, resembling a bell pepper, with a pear-like taste. Eyes Paraguay and Makes Brazil Unhappy Brazilians Fear Chavez Will Bring Trouble to Mercosur Mercosur Parliament Installed. |
|
From: Lesa M. <tr...@go...> - 2007-07-02 01:14:45
|
retail price US $ 999.00 You save: $909 adobe photoshop cs3 extended http://pauluzzu.com |
|
From: SourceForge.net <no...@so...> - 2007-06-29 10:03:24
|
Patches item #1745239, was opened at 2007-06-29 14:03 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1745239&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: acson-sw (acson-sw) Assigned to: Nobody/Anonymous (nobody) Summary: Default field values Initial Comment: Fixed bug with default field values for columns for firebird connection. Default domen values are used too ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1745239&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2007-06-28 14:29:18
|
Patches item #1744847, was opened at 2007-06-28 07:29 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1744847&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: Firebird, fromDatabase generate 2 ID columns fix Initial Comment: fixed bug with 2 ID columns in "fromDatabase" tables for Firebird connection ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1744847&group_id=74338 |
|
From: Terrell N. <wtl...@in...> - 2007-06-20 13:29:32
|
alpheratz debilitate constitute congressional. anther brant arbitrate dada bootstrap constructible. cyrillic dec abscess behavioral bromine aborning collimate croak coronet. collimate disruption caldwell abyss bee coffeecup dapple. |
|
From: Felice <zl...@ca...> - 2007-06-15 19:29:03
|
lol http://ksjab.hk/ |
|
From: SourceForge.net <no...@so...> - 2007-06-12 17:22:31
|
Patches item #1735900, was opened at 2007-06-12 19:22 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1735900&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: til (tkoschnick) Assigned to: Nobody/Anonymous (nobody) Summary: Fix typo in new INT type classes Initial Comment: Hi, the attached patch fixes a tiny typo in the class definitions for SOTinyIntCol & Co. Without it, the new col types are created, but still with type 'INT'. Cheers, Til ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1735900&group_id=74338 |
|
From: Christian <yv...@mo...> - 2007-06-12 07:24:28
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" text="#000000"> The move comes after plans to close two accident and emergency units in the west of Scotland were reversed.<br> <img src="http://qpcleft.hk/redeem.gif"><br> "Of course, both cottage hospitals in the Borders have been closed, but the buildings remain in the hands of NHS Borders," she said.<br> </body> </html> |
|
From: <sub...@co...> - 2007-06-08 16:08:46
|
Author: ianb
Date: 2007-06-08 10:08:39 -0600 (Fri, 08 Jun 2007)
New Revision: 2716
Modified:
SQLObject/trunk/sqlobject/views.py
Log:
docstring formatting
Modified: SQLObject/trunk/sqlobject/views.py
===================================================================
--- SQLObject/trunk/sqlobject/views.py 2007-06-08 16:08:12 UTC (rev 2715)
+++ SQLObject/trunk/sqlobject/views.py 2007-06-08 16:08:39 UTC (rev 2716)
@@ -45,15 +45,18 @@
class ViewSQLObject(SQLObject):
- '''A SQLObject class that derives all it's values from other SQLObject classes.
- Columns on subclasses should use SQLBuilder constructs for dbName,
- and sqlmeta should specify:
- idName as a SQLBuilder construction
- clause as SQLBuilder clause for specifying join conditions or other restrictions
- table as an optional alternate name for the class alias
- See test_views.py for simple examples.
- '''
+ """
+ A SQLObject class that derives all it's values from other SQLObject classes.
+ Columns on subclasses should use SQLBuilder constructs for dbName,
+ and sqlmeta should specify:
+ * idName as a SQLBuilder construction
+ * clause as SQLBuilder clause for specifying join conditions or other restrictions
+ * table as an optional alternate name for the class alias
+
+ See test_views.py for simple examples.
+ """
+
def __classinit__(cls, new_attrs):
SQLObject.__classinit__(cls, new_attrs)
# like is_base
|
|
From: SourceForge.net <no...@so...> - 2007-05-17 17:19:03
|
Bugs item #1720866, was opened at 2007-05-17 10:19 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1720866&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: MySQL Group: SQLObject release (specify) Status: Open Resolution: None Priority: 5 Private: No Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: SQLObject 0.9: Unicode interaction problems with MySQLDb Initial Comment: E-mail: elv...@gm... After upgrading to TurboGears 1.0.2.2, SQLObject 0.9 and MySQLdb 1.2.2 final, the Unicode problem still remains. Changing line 32 of sqlobject/mysql/mysqlconnection.py, from need_unicode = True to need_unicode = False solves the problem, as it used to solve in older versions of TurboGears/SQLObject. Maybe it is a bug of MySQLdb, but the code I patched already seems to be a workaround :) Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/CherryPy-2.2.1-py2.5.egg/cherrypy/_cphttptools.py", line 105, in _run self.main() File "/usr/lib/python2.5/site-packages/CherryPy-2.2.1-py2.5.egg/cherrypy/_cphttptools.py", line 254, in main body = page_handler(*virtual_path, **self.params) File "<string>", line 3, in fetch File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/controllers.py", line 336, in expose *args, **kw) File "<string>", line 5, in run_with_transaction File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/database.py", line 303, in so_rwt retval = func(*args, **kw) File "<string>", line 5, in _expose File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/controllers.py", line 351, in <lambda> mapping, fragment, args, kw))) File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/controllers.py", line 378, in _execute_func output = errorhandling.try_call(func, *args, **kw) File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/errorhandling.py", line 73, in try_call return func(self, *args, **kw) File "<string>", line 3, in fetch File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/controllers.py", line 173, in validate return errorhandling.run_with_errors(errors, func, *args, **kw) File "/usr/lib/python2.5/site-packages/TurboGears-1.0.2.2-py2.5.egg/turbogears/errorhandling.py", line 113, in run_with_errors return func(self, *args, **kw) File "/home/epx/luca/luca/sys_users.py", line 191, in fetch return self.base_fetch(id) File "/home/epx/luca/luca/simple_table.py", line 395, in base_fetch grant.done(self.row_name(row)) File "/home/epx/luca/luca/mylib.py", line 69, in done self._write() File "/home/epx/luca/luca/mylib.py", line 38, in _write user=current.user, err=self.logerr) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/declarative.py", line 94, in _wrapper return fn(self, *args, **kwargs) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/main.py", line 1214, in __init__ self._create(id, **kw) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/main.py", line 1245, in _create self._SO_finishCreate(id) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/main.py", line 1269, in _SO_finishCreate id, names, values) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/dbconnection.py", line 849, in queryInsertID self._connection, soInstance, id, names, values) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/mysql/mysqlconnection.py", line 156, in _queryInsertID self._executeRetry(conn, c, q) File "/usr/lib/python2.5/site-packages/SQLObject-0.9.0-py2.5.egg/sqlobject/mysql/mysqlconnection.py", line 113, in _executeRetry query = unicode(query, self.encoding) UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 90: ordinal not in range(128) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1720866&group_id=74338 |
|
From: <sub...@co...> - 2007-05-15 16:03:33
|
Author: phd Date: 2007-05-15 10:03:37 -0600 (Tue, 15 May 2007) New Revision: 2693 Modified: SQLObject/docs/News.txt Log: Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName lookup in case the user named columns differently using dbName. Modified: SQLObject/docs/News.txt =================================================================== --- SQLObject/docs/News.txt 2007-05-15 16:03:11 UTC (rev 2692) +++ SQLObject/docs/News.txt 2007-05-15 16:03:37 UTC (rev 2693) @@ -225,6 +225,9 @@ SQLObject 0.7 ============= +* Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName + lookup in case the user named columns differently using dbName. + * Minor correction in the tests: we fully support EnumCol in Postgres. SQLObject 0.7.7 |
|
From: <sub...@co...> - 2007-05-15 16:03:05
|
Author: phd
Date: 2007-05-15 10:03:11 -0600 (Tue, 15 May 2007)
New Revision: 2692
Modified:
SQLObject/trunk/sqlobject/joins.py
SQLObject/trunk/sqlobject/tests/test_SQLMultipleJoin.py
SQLObject/trunk/sqlobject/tests/test_SingleJoin.py
SQLObject/trunk/sqlobject/views.py
Log:
Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
lookup in case the user named columns differently using dbName.
Modified: SQLObject/trunk/sqlobject/joins.py
===================================================================
--- SQLObject/trunk/sqlobject/joins.py 2007-05-15 15:58:31 UTC (rev 2691)
+++ SQLObject/trunk/sqlobject/joins.py 2007-05-15 16:03:11 UTC (rev 2692)
@@ -152,6 +152,12 @@
conn = None
return self._applyOrderBy([self.otherClass.get(id, conn) for (id,) in ids if id is not None], self.otherClass)
+ def _dbNameToPythonName(self):
+ for column in self.otherClass.sqlmeta.columns.values():
+ if column.dbName == self.joinColumn:
+ return column.name
+ return self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+
class MultipleJoin(Join):
baseClass = SOMultipleJoin
@@ -162,7 +168,8 @@
conn = inst._connection
else:
conn = None
- results = self.otherClass.select(getattr(self.otherClass.q, self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)) == inst.id, connection=conn)
+ pythonColumn = self._dbNameToPythonName()
+ results = self.otherClass.select(getattr(self.otherClass.q, pythonColumn) == inst.id, connection=conn)
return results.orderBy(self.orderBy)
class SQLMultipleJoin(Join):
@@ -252,7 +259,7 @@
def tablesUsedImmediate(self):
return [self.table, self.interTable]
-
+
def __sqlrepr__(self, db):
return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
@@ -276,7 +283,7 @@
conn = None
results = self.otherClass.select(sqlbuilder.AND(
OtherTableToJoin(
- self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
self.intermediateTable, self.otherColumn
),
JoinToTable(
@@ -305,7 +312,7 @@
conn = inst._connection
else:
conn = None
- pythonColumn = self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+ pythonColumn = self._dbNameToPythonName()
results = self.otherClass.select(
getattr(self.otherClass.q, pythonColumn) == inst.id,
connection=conn
@@ -387,7 +394,7 @@
& (sqlbuilder.Field(self.intermediateTable, self.joinColumn)
== obj.id))
select = self.otherClass.select(query)
- return _ManyToManySelectWrapper(obj, self, select)
+ return _ManyToManySelectWrapper(obj, self, select)
def event_CreateTableSignal(self, soClass, connection, extra_sql,
post_funcs):
@@ -411,14 +418,14 @@
joinColumn = None
otherColumn = None
createJoinTable = True
-
+
class _ManyToManySelectWrapper(object):
def __init__(self, forObject, join, select):
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -456,7 +463,7 @@
obj = self.join.otherClass(**kw)
self.add(obj)
return obj
-
+
class SOOneToMany(object):
def __init__(self, soClass, name, join, joinColumn, **attrs):
@@ -502,7 +509,7 @@
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -523,4 +530,3 @@
def create(self, **kw):
kw[self.join.joinColumn] = self.forObject.id
return self.join.otherClass(**kw)
-
Modified: SQLObject/trunk/sqlobject/tests/test_SQLMultipleJoin.py
===================================================================
--- SQLObject/trunk/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:58:31 UTC (rev 2691)
+++ SQLObject/trunk/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 16:03:11 UTC (rev 2692)
@@ -3,12 +3,12 @@
class Race(SQLObject):
name = StringCol()
- fightersAsList = MultipleJoin('RFighter')
- fightersAsSResult = SQLMultipleJoin('RFighter')
+ fightersAsList = MultipleJoin('RFighter', joinColumn="rf_id")
+ fightersAsSResult = SQLMultipleJoin('RFighter', joinColumn="rf_id")
class RFighter(SQLObject):
name = StringCol()
- race = ForeignKey('Race')
+ race = ForeignKey('Race', dbName="rf_id")
power = IntCol()
def createAllTables():
Modified: SQLObject/trunk/sqlobject/tests/test_SingleJoin.py
===================================================================
--- SQLObject/trunk/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:58:31 UTC (rev 2691)
+++ SQLObject/trunk/sqlobject/tests/test_SingleJoin.py 2007-05-15 16:03:11 UTC (rev 2692)
@@ -4,13 +4,13 @@
class PersonWithAlbum(SQLObject):
name = StringCol()
# albumNone returns the album or none
- albumNone = SingleJoin('PhotoAlbum', joinColumn='person_id')
+ albumNone = SingleJoin('PhotoAlbum', joinColumn='test_person_id')
# albumInstance returns the album or an default album instance
- albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='person_id')
+ albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='test_person_id')
class PhotoAlbum(SQLObject):
color = StringCol(default='red')
- person = ForeignKey('PersonWithAlbum')
+ person = ForeignKey('PersonWithAlbum', dbName='test_person_id')
def test_1():
setupClass([PersonWithAlbum, PhotoAlbum])
Modified: SQLObject/trunk/sqlobject/views.py
===================================================================
--- SQLObject/trunk/sqlobject/views.py 2007-05-15 15:58:31 UTC (rev 2691)
+++ SQLObject/trunk/sqlobject/views.py 2007-05-15 16:03:11 UTC (rev 2692)
@@ -28,7 +28,7 @@
class ViewSQLObjectTable(SQLObjectTable):
FieldClass = ViewSQLObjectField
UnicodeFieldClass = UnicodeViewSQLObjectField
-
+
def __getattr__(self, attr):
if attr == 'sqlmeta':
raise AttributeError
@@ -53,13 +53,13 @@
table as an optional alternate name for the class alias
See test_views.py for simple examples.
'''
-
+
def __classinit__(cls, new_attrs):
SQLObject.__classinit__(cls, new_attrs)
# like is_base
if cls.__name__ != 'ViewSQLObject':
dbName = hasattr(cls,'_connection') and (cls._connection and cls._connection.dbName) or None
-
+
if getattr(cls.sqlmeta, 'table', None):
cls.sqlmeta.alias = cls.sqlmeta.table
else:
@@ -81,7 +81,7 @@
aggregates[''].append(ascol)
else:
columns.append(ascol)
-
+
metajoin = getattr(cls.sqlmeta, 'join', NoDefault)
clause = getattr(cls.sqlmeta, 'clause', NoDefault)
select = Select(columns,
@@ -91,17 +91,17 @@
#distinctOn=cls.sqlmeta.idName,
join=metajoin,
clause=clause)
-
+
aggregates = aggregates.values()
#print cls.__name__, sqlrepr(aggregates, dbName)
-
+
if aggregates != [[None]]:
join = []
last_alias = "%s_base" % alias
last_id = "id"
last = Alias(select, last_alias)
columns = [ColumnAS(SQLConstant("%s.%s"%(last_alias,x.expr2)), x.expr2) for x in columns]
-
+
for i, agg in enumerate(aggregates):
restriction = agg[0]
if restriction is None:
@@ -121,22 +121,22 @@
agg_join = LEFTJOINOn(last,
new_alias,
"%s.%s = %s.%s" % (last_alias, last_id, agg_alias, agg_id))
-
+
join.append(agg_join)
for col in agg:
columns.append(ColumnAS(SQLConstant("%s.%s"%(agg_alias, col.expr2)),col.expr2))
-
+
last = new_alias
last_alias = agg_alias
last_id = agg_id
select = Select(columns,
join=join)
-
+
cls.sqlmeta.table = Alias(select, alias)
cls.q = ViewSQLObjectTable(cls)
for n,col in cls.sqlmeta.columns.iteritems():
- col.dbName = getattr(cls.q, n)
-
+ col.dbName = n
+
def isAggregate(expr):
if isinstance(expr, SQLCall):
return True
|
|
From: <sub...@co...> - 2007-05-15 15:58:25
|
Author: phd
Date: 2007-05-15 09:58:31 -0600 (Tue, 15 May 2007)
New Revision: 2691
Modified:
SQLObject/branches/0.9/docs/News.txt
SQLObject/branches/0.9/sqlobject/joins.py
SQLObject/branches/0.9/sqlobject/tests/test_SQLMultipleJoin.py
SQLObject/branches/0.9/sqlobject/tests/test_SingleJoin.py
Log:
Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
lookup in case the user named columns differently using dbName.
Modified: SQLObject/branches/0.9/docs/News.txt
===================================================================
--- SQLObject/branches/0.9/docs/News.txt 2007-05-15 15:57:45 UTC (rev 2690)
+++ SQLObject/branches/0.9/docs/News.txt 2007-05-15 15:58:31 UTC (rev 2691)
@@ -224,6 +224,9 @@
SQLObject 0.7
=============
+* Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
+ lookup in case the user named columns differently using dbName.
+
* Minor correction in the tests: we fully support EnumCol in Postgres.
SQLObject 0.7.7
Modified: SQLObject/branches/0.9/sqlobject/joins.py
===================================================================
--- SQLObject/branches/0.9/sqlobject/joins.py 2007-05-15 15:57:45 UTC (rev 2690)
+++ SQLObject/branches/0.9/sqlobject/joins.py 2007-05-15 15:58:31 UTC (rev 2691)
@@ -148,6 +148,12 @@
conn = None
return self._applyOrderBy([self.otherClass.get(id, conn) for (id,) in ids if id is not None], self.otherClass)
+ def _dbNameToPythonName(self):
+ for column in self.otherClass.sqlmeta.columns.values():
+ if column.dbName == self.joinColumn:
+ return column.name
+ return self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+
class MultipleJoin(Join):
baseClass = SOMultipleJoin
@@ -158,7 +164,8 @@
conn = inst._connection
else:
conn = None
- results = self.otherClass.select(getattr(self.otherClass.q, self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)) == inst.id, connection=conn)
+ pythonColumn = self._dbNameToPythonName()
+ results = self.otherClass.select(getattr(self.otherClass.q, pythonColumn) == inst.id, connection=conn)
if self.orderBy is NoDefault:
self.orderBy = self.otherClass.sqlmeta.defaultOrder
return results.orderBy(self.orderBy)
@@ -244,7 +251,7 @@
self.idName = idName
self.interTable = interTable
self.joinColumn = joinColumn
-
+
def __sqlrepr__(self, db):
return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
@@ -265,7 +272,7 @@
conn = None
results = self.otherClass.select(sqlbuilder.AND(
OtherTableToJoin(
- self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
self.intermediateTable, self.otherColumn
),
JoinToTable(
@@ -296,7 +303,7 @@
conn = inst._connection
else:
conn = None
- pythonColumn = self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+ pythonColumn = self._dbNameToPythonName()
results = self.otherClass.select(
getattr(self.otherClass.q, pythonColumn) == inst.id,
connection=conn
@@ -378,7 +385,7 @@
& (sqlbuilder.Field(self.intermediateTable, self.joinColumn)
== obj.id))
select = self.otherClass.select(query)
- return _ManyToManySelectWrapper(obj, self, select)
+ return _ManyToManySelectWrapper(obj, self, select)
def event_CreateTableSignal(self, soClass, connection, extra_sql,
post_funcs):
@@ -402,14 +409,14 @@
joinColumn = None
otherColumn = None
createJoinTable = True
-
+
class _ManyToManySelectWrapper(object):
def __init__(self, forObject, join, select):
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -447,7 +454,7 @@
obj = self.join.otherClass(**kw)
self.add(obj)
return obj
-
+
class SOOneToMany(object):
def __init__(self, soClass, name, join, joinColumn, **attrs):
@@ -493,7 +500,7 @@
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -514,4 +521,3 @@
def create(self, **kw):
kw[self.join.joinColumn] = self.forObject.id
return self.join.otherClass(**kw)
-
Modified: SQLObject/branches/0.9/sqlobject/tests/test_SQLMultipleJoin.py
===================================================================
--- SQLObject/branches/0.9/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:57:45 UTC (rev 2690)
+++ SQLObject/branches/0.9/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:58:31 UTC (rev 2691)
@@ -3,12 +3,12 @@
class Race(SQLObject):
name = StringCol()
- fightersAsList = MultipleJoin('RFighter')
- fightersAsSResult = SQLMultipleJoin('RFighter')
+ fightersAsList = MultipleJoin('RFighter', joinColumn="rf_id")
+ fightersAsSResult = SQLMultipleJoin('RFighter', joinColumn="rf_id")
class RFighter(SQLObject):
name = StringCol()
- race = ForeignKey('Race')
+ race = ForeignKey('Race', dbName="rf_id")
power = IntCol()
def createAllTables():
Modified: SQLObject/branches/0.9/sqlobject/tests/test_SingleJoin.py
===================================================================
--- SQLObject/branches/0.9/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:57:45 UTC (rev 2690)
+++ SQLObject/branches/0.9/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:58:31 UTC (rev 2691)
@@ -4,13 +4,13 @@
class PersonWithAlbum(SQLObject):
name = StringCol()
# albumNone returns the album or none
- albumNone = SingleJoin('PhotoAlbum', joinColumn='person_id')
+ albumNone = SingleJoin('PhotoAlbum', joinColumn='test_person_id')
# albumInstance returns the album or an default album instance
- albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='person_id')
+ albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='test_person_id')
class PhotoAlbum(SQLObject):
color = StringCol(default='red')
- person = ForeignKey('PersonWithAlbum')
+ person = ForeignKey('PersonWithAlbum', dbName='test_person_id')
def test_1():
setupClass([PersonWithAlbum, PhotoAlbum])
|
|
From: <sub...@co...> - 2007-05-15 15:57:38
|
Author: phd
Date: 2007-05-15 09:57:45 -0600 (Tue, 15 May 2007)
New Revision: 2690
Modified:
SQLObject/branches/0.8/docs/News.txt
SQLObject/branches/0.8/sqlobject/joins.py
SQLObject/branches/0.8/sqlobject/tests/test_SQLMultipleJoin.py
SQLObject/branches/0.8/sqlobject/tests/test_SingleJoin.py
Log:
Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
lookup in case the user named columns differently using dbName.
Modified: SQLObject/branches/0.8/docs/News.txt
===================================================================
--- SQLObject/branches/0.8/docs/News.txt 2007-05-15 15:56:48 UTC (rev 2689)
+++ SQLObject/branches/0.8/docs/News.txt 2007-05-15 15:57:45 UTC (rev 2690)
@@ -167,6 +167,9 @@
SQLObject 0.7
=============
+* Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
+ lookup in case the user named columns differently using dbName.
+
* Minor correction in the tests: we fully support EnumCol in Postgres.
SQLObject 0.7.7
Modified: SQLObject/branches/0.8/sqlobject/joins.py
===================================================================
--- SQLObject/branches/0.8/sqlobject/joins.py 2007-05-15 15:56:48 UTC (rev 2689)
+++ SQLObject/branches/0.8/sqlobject/joins.py 2007-05-15 15:57:45 UTC (rev 2690)
@@ -148,6 +148,12 @@
conn = None
return self._applyOrderBy([self.otherClass.get(id, conn) for (id,) in ids if id is not None], self.otherClass)
+ def _dbNameToPythonName(self):
+ for column in self.otherClass.sqlmeta.columns.values():
+ if column.dbName == self.joinColumn:
+ return column.name
+ return self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+
class MultipleJoin(Join):
baseClass = SOMultipleJoin
@@ -158,7 +164,8 @@
conn = inst._connection
else:
conn = None
- results = self.otherClass.select(getattr(self.otherClass.q, self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)) == inst.id, connection=conn)
+ pythonColumn = self._dbNameToPythonName()
+ results = self.otherClass.select(getattr(self.otherClass.q, pythonColumn) == inst.id, connection=conn)
if self.orderBy is NoDefault:
self.orderBy = self.otherClass.sqlmeta.defaultOrder
return results.orderBy(self.orderBy)
@@ -244,7 +251,7 @@
self.idName = idName
self.interTable = interTable
self.joinColumn = joinColumn
-
+
def __sqlrepr__(self, db):
return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
@@ -265,7 +272,7 @@
conn = None
results = self.otherClass.select(sqlbuilder.AND(
OtherTableToJoin(
- self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
self.intermediateTable, self.otherColumn
),
JoinToTable(
@@ -296,7 +303,7 @@
conn = inst._connection
else:
conn = None
- pythonColumn = self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+ pythonColumn = self._dbNameToPythonName()
results = self.otherClass.select(
getattr(self.otherClass.q, pythonColumn) == inst.id,
connection=conn
@@ -378,7 +385,7 @@
& (sqlbuilder.Field(self.intermediateTable, self.joinColumn)
== obj.id))
select = self.otherClass.select(query)
- return _ManyToManySelectWrapper(obj, self, select)
+ return _ManyToManySelectWrapper(obj, self, select)
def event_CreateTableSignal(self, soClass, connection, extra_sql,
post_funcs):
@@ -402,14 +409,14 @@
joinColumn = None
otherColumn = None
createJoinTable = True
-
+
class _ManyToManySelectWrapper(object):
def __init__(self, forObject, join, select):
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -447,7 +454,7 @@
obj = self.join.otherClass(**kw)
self.add(obj)
return obj
-
+
class SOOneToMany(object):
def __init__(self, soClass, name, join, joinColumn, **attrs):
@@ -493,7 +500,7 @@
self.forObject = forObject
self.join = join
self.select = select
-
+
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
@@ -514,4 +521,3 @@
def create(self, **kw):
kw[self.join.joinColumn] = self.forObject.id
return self.join.otherClass(**kw)
-
Modified: SQLObject/branches/0.8/sqlobject/tests/test_SQLMultipleJoin.py
===================================================================
--- SQLObject/branches/0.8/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:56:48 UTC (rev 2689)
+++ SQLObject/branches/0.8/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:57:45 UTC (rev 2690)
@@ -3,12 +3,12 @@
class Race(SQLObject):
name = StringCol()
- fightersAsList = MultipleJoin('RFighter')
- fightersAsSResult = SQLMultipleJoin('RFighter')
+ fightersAsList = MultipleJoin('RFighter', joinColumn="rf_id")
+ fightersAsSResult = SQLMultipleJoin('RFighter', joinColumn="rf_id")
class RFighter(SQLObject):
name = StringCol()
- race = ForeignKey('Race')
+ race = ForeignKey('Race', dbName="rf_id")
power = IntCol()
def createAllTables():
Modified: SQLObject/branches/0.8/sqlobject/tests/test_SingleJoin.py
===================================================================
--- SQLObject/branches/0.8/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:56:48 UTC (rev 2689)
+++ SQLObject/branches/0.8/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:57:45 UTC (rev 2690)
@@ -4,13 +4,13 @@
class PersonWithAlbum(SQLObject):
name = StringCol()
# albumNone returns the album or none
- albumNone = SingleJoin('PhotoAlbum', joinColumn='person_id')
+ albumNone = SingleJoin('PhotoAlbum', joinColumn='test_person_id')
# albumInstance returns the album or an default album instance
- albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='person_id')
+ albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='test_person_id')
class PhotoAlbum(SQLObject):
color = StringCol(default='red')
- person = ForeignKey('PersonWithAlbum')
+ person = ForeignKey('PersonWithAlbum', dbName='test_person_id')
def test_1():
setupClass([PersonWithAlbum, PhotoAlbum])
|
|
From: <sub...@co...> - 2007-05-15 15:56:44
|
Author: phd
Date: 2007-05-15 09:56:48 -0600 (Tue, 15 May 2007)
New Revision: 2689
Modified:
SQLObject/branches/0.7/docs/News.txt
SQLObject/branches/0.7/sqlobject/joins.py
SQLObject/branches/0.7/sqlobject/tests/test_SQLMultipleJoin.py
SQLObject/branches/0.7/sqlobject/tests/test_SingleJoin.py
Log:
Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
lookup in case the user named columns differently using dbName.
Modified: SQLObject/branches/0.7/docs/News.txt
===================================================================
--- SQLObject/branches/0.7/docs/News.txt 2007-05-15 14:41:31 UTC (rev 2688)
+++ SQLObject/branches/0.7/docs/News.txt 2007-05-15 15:56:48 UTC (rev 2689)
@@ -10,6 +10,9 @@
SQLObject 0.7
=============
+* Replaced calls to style.dbColumnToPythonAttr() in joins.py by name/dbName
+ lookup in case the user named columns differently using dbName.
+
* Minor correction in the tests: we fully support EnumCol in Postgres.
SQLObject 0.7.7
Modified: SQLObject/branches/0.7/sqlobject/joins.py
===================================================================
--- SQLObject/branches/0.7/sqlobject/joins.py 2007-05-15 14:41:31 UTC (rev 2688)
+++ SQLObject/branches/0.7/sqlobject/joins.py 2007-05-15 15:56:48 UTC (rev 2689)
@@ -146,6 +146,12 @@
conn = None
return self._applyOrderBy([self.otherClass.get(id, conn) for (id,) in ids if id is not None], self.otherClass)
+ def _dbNameToPythonName(self):
+ for column in self.otherClass.sqlmeta.columns.values():
+ if column.dbName == self.joinColumn:
+ return column.name
+ return self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+
class MultipleJoin(Join):
baseClass = SOMultipleJoin
@@ -156,7 +162,8 @@
conn = inst._connection
else:
conn = None
- results = self.otherClass.select(getattr(self.otherClass.q, self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)) == inst.id, connection=conn)
+ pythonColumn = self._dbNameToPythonName()
+ results = self.otherClass.select(getattr(self.otherClass.q, pythonColumn) == inst.id, connection=conn)
if self.orderBy is NoDefault:
self.orderBy = self.otherClass.sqlmeta.defaultOrder
return results.orderBy(self.orderBy)
@@ -242,7 +249,7 @@
self.idName = idName
self.interTable = interTable
self.joinColumn = joinColumn
-
+
def __sqlrepr__(self, db):
return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
@@ -263,7 +270,7 @@
conn = None
results = self.otherClass.select(sqlbuilder.AND(
OtherTableToJoin(
- self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
self.intermediateTable, self.otherColumn
),
JoinToTable(
@@ -294,7 +301,7 @@
conn = inst._connection
else:
conn = None
- pythonColumn = self.soClass.sqlmeta.style.dbColumnToPythonAttr(self.joinColumn)
+ pythonColumn = self._dbNameToPythonName()
results = self.otherClass.select(
getattr(self.otherClass.q, pythonColumn) == inst.id,
connection=conn
Modified: SQLObject/branches/0.7/sqlobject/tests/test_SQLMultipleJoin.py
===================================================================
--- SQLObject/branches/0.7/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 14:41:31 UTC (rev 2688)
+++ SQLObject/branches/0.7/sqlobject/tests/test_SQLMultipleJoin.py 2007-05-15 15:56:48 UTC (rev 2689)
@@ -3,12 +3,12 @@
class Race(SQLObject):
name = StringCol()
- fightersAsList = MultipleJoin('RFighter')
- fightersAsSResult = SQLMultipleJoin('RFighter')
+ fightersAsList = MultipleJoin('RFighter', joinColumn="rf_id")
+ fightersAsSResult = SQLMultipleJoin('RFighter', joinColumn="rf_id")
class RFighter(SQLObject):
name = StringCol()
- race = ForeignKey('Race')
+ race = ForeignKey('Race', dbName="rf_id")
power = IntCol()
def createAllTables():
Modified: SQLObject/branches/0.7/sqlobject/tests/test_SingleJoin.py
===================================================================
--- SQLObject/branches/0.7/sqlobject/tests/test_SingleJoin.py 2007-05-15 14:41:31 UTC (rev 2688)
+++ SQLObject/branches/0.7/sqlobject/tests/test_SingleJoin.py 2007-05-15 15:56:48 UTC (rev 2689)
@@ -4,13 +4,13 @@
class PersonWithAlbum(SQLObject):
name = StringCol()
# albumNone returns the album or none
- albumNone = SingleJoin('PhotoAlbum', joinColumn='person_id')
+ albumNone = SingleJoin('PhotoAlbum', joinColumn='test_person_id')
# albumInstance returns the album or an default album instance
- albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='person_id')
+ albumInstance = SingleJoin('PhotoAlbum', makeDefault=True, joinColumn='test_person_id')
class PhotoAlbum(SQLObject):
color = StringCol(default='red')
- person = ForeignKey('PersonWithAlbum')
+ person = ForeignKey('PersonWithAlbum', dbName='test_person_id')
def test_1():
setupClass([PersonWithAlbum, PhotoAlbum])
|
|
From: <sub...@co...> - 2007-05-14 14:46:28
|
Author: phd Date: 2007-05-14 08:46:29 -0600 (Mon, 14 May 2007) New Revision: 2687 Modified: SQLObject/docs/News.txt Log: Minor correction in the tests: we fully support EnumCol in Postgres. Modified: SQLObject/docs/News.txt =================================================================== --- SQLObject/docs/News.txt 2007-05-14 14:46:03 UTC (rev 2686) +++ SQLObject/docs/News.txt 2007-05-14 14:46:29 UTC (rev 2687) @@ -65,6 +65,26 @@ * idName can be inherited from the parent sqlmeta class. +SQLObject 0.8.4 +=============== + +Released 10 May 2007. + +Bug Fixes +--------- + +* A number of bugfixes forward-ported from 0.7.7. + +SQLObject 0.8.3 +=============== + +Released 3 May 2007. + +Bug Fixes +--------- + +* A number of bugfixes forward-ported from 0.7.6. + SQLObject 0.8.2 =============== @@ -202,9 +222,16 @@ * Fixed aggregators and accumulators with inheritance. +SQLObject 0.7 +============= + +* Minor correction in the tests: we fully support EnumCol in Postgres. + SQLObject 0.7.7 =============== +Released 10 May 2007. + Bug Fixes --------- |
|
From: <sub...@co...> - 2007-05-14 14:46:01
|
Author: phd
Date: 2007-05-14 08:46:03 -0600 (Mon, 14 May 2007)
New Revision: 2686
Modified:
SQLObject/trunk/sqlobject/tests/dbtest.py
Log:
Minor correction in the tests: we fully support EnumCol in Postgres.
Modified: SQLObject/trunk/sqlobject/tests/dbtest.py
===================================================================
--- SQLObject/trunk/sqlobject/tests/dbtest.py 2007-05-14 14:45:41 UTC (rev 2685)
+++ SQLObject/trunk/sqlobject/tests/dbtest.py 2007-05-14 14:46:03 UTC (rev 2686)
@@ -38,7 +38,6 @@
return
"""
supportsMatrix = {
- '+restrictedEnum': 'postgres',
'+exceptions': 'mysql sqlite',
'-transactions': 'mysql',
'-dropTableCascade': 'sybase mssql',
|
|
From: <sub...@co...> - 2007-05-14 14:45:39
|
Author: phd
Date: 2007-05-14 08:45:41 -0600 (Mon, 14 May 2007)
New Revision: 2685
Modified:
SQLObject/branches/0.9/docs/News.txt
SQLObject/branches/0.9/sqlobject/tests/dbtest.py
Log:
Minor correction in the tests: we fully support EnumCol in Postgres.
Modified: SQLObject/branches/0.9/docs/News.txt
===================================================================
--- SQLObject/branches/0.9/docs/News.txt 2007-05-14 14:45:09 UTC (rev 2684)
+++ SQLObject/branches/0.9/docs/News.txt 2007-05-14 14:45:41 UTC (rev 2685)
@@ -221,6 +221,11 @@
* Fixed aggregators and accumulators with inheritance.
+SQLObject 0.7
+=============
+
+* Minor correction in the tests: we fully support EnumCol in Postgres.
+
SQLObject 0.7.7
===============
Modified: SQLObject/branches/0.9/sqlobject/tests/dbtest.py
===================================================================
--- SQLObject/branches/0.9/sqlobject/tests/dbtest.py 2007-05-14 14:45:09 UTC (rev 2684)
+++ SQLObject/branches/0.9/sqlobject/tests/dbtest.py 2007-05-14 14:45:41 UTC (rev 2685)
@@ -38,7 +38,6 @@
return
"""
supportsMatrix = {
- '+restrictedEnum': 'postgres',
'+exceptions': 'mysql sqlite',
'-transactions': 'mysql',
'-dropTableCascade': 'sybase mssql',
|
|
From: <sub...@co...> - 2007-05-14 14:45:10
|
Author: phd
Date: 2007-05-14 08:45:09 -0600 (Mon, 14 May 2007)
New Revision: 2684
Modified:
SQLObject/branches/0.8/docs/News.txt
SQLObject/branches/0.8/sqlobject/tests/dbtest.py
Log:
Minor correction in the tests: we fully support EnumCol in Postgres.
Modified: SQLObject/branches/0.8/docs/News.txt
===================================================================
--- SQLObject/branches/0.8/docs/News.txt 2007-05-14 14:44:47 UTC (rev 2683)
+++ SQLObject/branches/0.8/docs/News.txt 2007-05-14 14:45:09 UTC (rev 2684)
@@ -164,6 +164,11 @@
* Fixed aggregators and accumulators with inheritance.
+SQLObject 0.7
+=============
+
+* Minor correction in the tests: we fully support EnumCol in Postgres.
+
SQLObject 0.7.7
===============
Modified: SQLObject/branches/0.8/sqlobject/tests/dbtest.py
===================================================================
--- SQLObject/branches/0.8/sqlobject/tests/dbtest.py 2007-05-14 14:44:47 UTC (rev 2683)
+++ SQLObject/branches/0.8/sqlobject/tests/dbtest.py 2007-05-14 14:45:09 UTC (rev 2684)
@@ -32,7 +32,6 @@
return
"""
supportsMatrix = {
- '+restrictedEnum': 'postgres',
'+exceptions': 'mysql sqlite',
'-transactions': 'mysql',
'-dropTableCascade': 'sybase mssql',
|
|
From: <sub...@co...> - 2007-05-14 14:44:55
|
Author: phd
Date: 2007-05-14 08:44:47 -0600 (Mon, 14 May 2007)
New Revision: 2683
Modified:
SQLObject/branches/0.7/docs/News.txt
SQLObject/branches/0.7/sqlobject/tests/dbtest.py
Log:
Minor correction in the tests: we fully support EnumCol in Postgres.
Modified: SQLObject/branches/0.7/docs/News.txt
===================================================================
--- SQLObject/branches/0.7/docs/News.txt 2007-05-10 15:18:47 UTC (rev 2682)
+++ SQLObject/branches/0.7/docs/News.txt 2007-05-14 14:44:47 UTC (rev 2683)
@@ -7,6 +7,11 @@
.. _start:
+SQLObject 0.7
+=============
+
+* Minor correction in the tests: we fully support EnumCol in Postgres.
+
SQLObject 0.7.7
===============
Modified: SQLObject/branches/0.7/sqlobject/tests/dbtest.py
===================================================================
--- SQLObject/branches/0.7/sqlobject/tests/dbtest.py 2007-05-10 15:18:47 UTC (rev 2682)
+++ SQLObject/branches/0.7/sqlobject/tests/dbtest.py 2007-05-14 14:44:47 UTC (rev 2683)
@@ -32,7 +32,6 @@
return
"""
supportsMatrix = {
- '+restrictedEnum': 'postgres',
'-transactions': 'mysql',
'-dropTableCascade': 'sybase mssql',
'-fromDatabase': 'sqlite',
|
|
From: until T. <hma...@ec...> - 2007-05-11 20:22:29
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=3DContent-Type content=3D"text/html; charset=3Diso-8859-1"> <META content=3D"MSHTML 6.00.2900.2912" name=3D"GENERATOR"> </HEAD> <BODY> <DIV align=3Dleft><FONT face=3DArial size=3D2><B>Your credit doesn't matter to us!</B></FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2>If you OWN property and want IMMEDIATE ready money to spend ANY way you like, or simply want to LOWER your current payments by a third or more, here is the deal we can offer you TONIGHT (hurry, this offer will expire NOW):</FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2><B>$263,000+ loan</B></FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2>AND EVEN MORE: After further review, our lenders have established the lowest entire payment!</FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2><B>Hurry, when the deal is gone, it is gone. Simply fill in this short form... </B></FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2>Don't worry about approval, your credit will not disqualify you!</FONT></DIV><BR> <DIV align=3Dleft><FONT face=3DArial size=3D2><a href=3D"http://skelaenyard.com/">http://skelaenyard.com/</a></FONT></DIV></BODY></HTML> |
|
From: Jan G. <tra...@im...> - 2007-05-10 16:07:51
|
<html> <body bgcolor=3D"#ffffff" text=3D"#000000"> <img src=3D"cid:B50C61C1=2E6B3DAA63"> <br> He that parts with his property before his death prepares himself for mu= ch suffering=2E <br> My opponent called me a cream puff=2E Well, I rushed out and got the bak= er's union to endorse me=2E <br> In my end is my beginning=2E <br> Insanity in individuals is something rare -- but in groups, parties, nat= ions, and epochs it is the rule=2E <br> Indecision and delays are the parents of failure=2E <br> All concord's born of contraries=2E <br> If you think you're free, there's no escape possible=2E <br> The hangover became a part of the day as well allowed-for as the Spanish= siesta=2E <br> What ever crushes individuality is despotism, no matter what name it is = called=2E <br> If you can laugh at it then you can live with it <br> No violent extreme endures=2E <br> Life is 10 percent what you make it and 90 percent how you take it=2E <br> Our will is always for our own good, but we do not always see what that = is=2E </body> </html> |
|
From: <sub...@co...> - 2007-05-10 15:18:52
|
Author: phd Date: 2007-05-10 09:18:47 -0600 (Thu, 10 May 2007) New Revision: 2682 Modified: SQLObject/tags/0.9.0/setup.cfg Log: Stable release. Modified: SQLObject/tags/0.9.0/setup.cfg =================================================================== --- SQLObject/tags/0.9.0/setup.cfg 2007-05-10 15:17:33 UTC (rev 2681) +++ SQLObject/tags/0.9.0/setup.cfg 2007-05-10 15:18:47 UTC (rev 2682) @@ -1,10 +1,6 @@ [easy_install] #find_links = http://svn.pythonpaste.org/package_index.html -[egg_info] -tag_build = dev -tag_svn_revision = true - [pudge] theme = pythonpaste.org docs = docs/index.txt docs/SQLObject.txt docs/TODO.txt |