Thread: [SQLObject] Adding a sqlmeta value for extra createTable args (or createJoinTables specifically)
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
From: Charles D. <cd...@sp...> - 2006-06-13 11:54:30
|
I'm in situation where it would be convenient to specify a value for createJoinTables at class definition time. At present, I'm doing so with my own code: class MyTable(SQLObject): ... MyTable.createTableArgs = { 'createJoinTables': False } ...and later... classNames = set(locals()) for clsName in list(classNames): cls = locals()[clsName] if (isinstance(cls, type) and issubclass(cls, SQLObject) and cls is not SQLObject and cls is not InheritableSQLObject): if hasattr(cls, 'createTableArgs'): cls.createTable(ifNotExists=True, **cls.createTableArgs) else: cls.createTable(ifNotExists=True) else: classNames.remove(clsName) This *works*, but it's been (rightly, I think) suggested by Jorge Vargas on the TurboGears list that it would be more appropriate to just have this (either createTableArgs or createJoinTables, specifically) be definable through sqlmeta. What's 'yall's take? If it's a Good Idea, I don't mind whipping together a patch myself. |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Oleg B. <ph...@ma...> - 2006-06-13 12:08:55
|
On Tue, Jun 13, 2006 at 06:53:54AM -0500, Charles Duffy wrote: > I'm in situation where it would be convenient to specify a value for > createJoinTables at class definition time. createJoinTables() is called from createTable(). Why not just pass neccessary arguments to createTable()? cls.createTable(ifNotExists=True, **createJoinTableArgs) Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Charles D. <cd...@sp...> - 2006-06-13 12:39:36
|
Oleg Broytmann wrote: > On Tue, Jun 13, 2006 at 06:53:54AM -0500, Charles Duffy wrote: >> I'm in situation where it would be convenient to specify a value for >> createJoinTables at class definition time. > > createJoinTables() is called from createTable(). Why not just pass > neccessary arguments to createTable()? > > cls.createTable(ifNotExists=True, **createJoinTableArgs) Because in some cases (as when going through the TurboGears "tg-admin sql create"), I don't directly control the createTable() call unless I go out of my way to do so. |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Charles D. <cd...@sp...> - 2006-06-13 15:42:21
|
Oleg Broytmann wrote: > On Tue, Jun 13, 2006 at 07:38:49AM -0500, Charles Duffy wrote: >> Because in some cases (as when going through the TurboGears "tg-admin >> sql create"), I don't directly control the createTable() call unless I >> go out of my way to do so. > > Command-line tools! I see. Well, adding a variable to sqlmeta would be > fine. Do you have a particular preference or specification on how this should be done (ie. allowing createTableArgs and/or dropTableArgs to be added as dicts to sqlmeta, or just adding support for sqlmeta.createJoinTables and sqlmeta.dropJoinTables specifically, or some other approach)? |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Oleg B. <ph...@ma...> - 2006-06-13 16:18:40
|
On Tue, Jun 13, 2006 at 10:41:12AM -0500, Charles Duffy wrote: > Do you have a particular preference or specification on how this should > be done (ie. allowing createTableArgs and/or dropTableArgs to be added > as dicts to sqlmeta, or just adding support for sqlmeta.createJoinTables > and sqlmeta.dropJoinTables specifically, or some other approach)? I don't have any preferences now. Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Oleg B. <ph...@ph...> - 2006-06-13 13:36:21
|
On Tue, Jun 13, 2006 at 07:38:49AM -0500, Charles Duffy wrote: > Because in some cases (as when going through the TurboGears "tg-admin > sql create"), I don't directly control the createTable() call unless I > go out of my way to do so. Command-line tools! I see. Well, adding a variable to sqlmeta would be fine. Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Jorge V. <jor...@gm...> - 2006-06-13 14:11:41
|
On 6/13/06, Oleg Broytmann <ph...@ph...> wrote: > > On Tue, Jun 13, 2006 at 07:38:49AM -0500, Charles Duffy wrote: > > Because in some cases (as when going through the TurboGears "tg-admin > > sql create"), I don't directly control the createTable() call unless I > > go out of my way to do so. > > Command-line tools! I see. Well, adding a variable to sqlmeta would be > fine. just as a note tg-admin sql create is an alias of sqlobject-admin create so don't go blamming our commandline tools, its your commandline tool :p just joking. now real reply addind that to the meta shouldn't be any troubles :) peace Oleg. > -- > Oleg Broytmann http://phd.pp.ru/ ph...@ph... > Programmers don't die, they just GOSUB without RETURN. > > > _______________________________________________ > sqlobject-discuss mailing list > sql...@li... > https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss > |
Re: [SQLObject] Adding a sqlmeta value for extra createTable args
(or createJoinTables specifically)
From: Oleg B. <ph...@ph...> - 2006-06-13 14:57:50
|
On Tue, Jun 13, 2006 at 10:11:34AM -0400, Jorge Vargas wrote: > now real reply addind that to the meta shouldn't be any troubles :) peace Well, the most correct solution would be to add options to *-admin command-line tools. But sqlmeta-based workarounds would be ok. Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |