From: Luke O. <lu...@ro...> - 2001-11-24 23:27:43
|
Hello all - I'm new to Webware, but I'm seriously considering using it. I'm in the process of choosing a new development platform (previous development has been in ColdFusion). Our sites are heavily database-backed, although most are not overly complex. I love Python. That's one of the main reasons I'm looking at webware. I've spent this weekend reading the webware source, and it's been fun to be reminded how simple and beautiful python is. (Erg, cfscript can die!). The other issue I want to mention is that we are currently an IIS and MS Access shop. This will likely not change in the near future. Another thing that will not change is the non-programmer mind of our graphics department. So mixing PSP into their static pages is the possible plan. What is the current state of MiddleKit? I like what I've read so far, curious how the database location is specified, curious how object inheritance is represented in a relational model. I'm very comfortable with complex relational join's and modeling... It will take a little readjusting to think of the same solutions in an object model (assuming possible..). Besides MiddleKit, what other ways are people dealing with database access? Ok, that's all for tonight. I'm very interested in helping development of WebWare, let me know what's outstanding and maybe I'll get into it. Luke __________________________________________________ Do You Yahoo!? Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month. http://geocities.yahoo.com/ps/info1 |
From: Geoff T. <gta...@na...> - 2001-11-26 13:59:49
|
At 03:27 PM 11/24/01 -0800, Luke Opperman wrote: <snip> >Besides MiddleKit, what other >ways are people dealing with database access? The app I'm working on is mostly reporting and data crunching, and involves tables that are used by non-Webware tools, so MiddleKit would just get in the way. It's strictly on Windows, so I'm using ADO to access SQL Server 2000. It's a good choice if you're strictly on Windows. ADO works just as well in Python as it does in VB. You can actually make it nicer and easier to use in Python than it is in VB by writing some wrappers around the Recordset objects to make them support iteration. The nice thing about using ADO is that most of the MS documentation contains code samples in Visual Basic with ADO, and it's easy to translate that to Python. -- - Geoff Talvola gtalvola@NameConnector.com |
From: Chuck E. <Chu...@ya...> - 2001-12-09 18:31:28
|
On Saturday 24 November 2001 03:27 pm, Luke Opperman wrote: > What is the current state of MiddleKit? I like what I've > read so far, curious how the database location is > specified, curious how object inheritance is represented in > a relational model. I'm very comfortable with complex > relational join's and modeling... It will take a little > readjusting to think of the same solutions in an object > model (assuming possible..). Besides MiddleKit, what other > ways are people dealing with database access? The arguments you pass when creating the store are passed onto the DB API module. So you have your usual keyword args like host, username, etc. The database name is derived from your model. If I remember my terminology correctly, we are using "horizontal mapping". In any case, the key points: - 1 SQL table per concrete (eg non-abstract) class - each table has all attributes including inheritance - obj references use a a 64 bit id (32 bit class serial num and 32 bit obj serial num) - lists are down with back "pointer"/ref attributes MKs largest weakness is unsophisticated list handling. It has an excellent test suite and is very stable. I use it in 2 production projects. I also use the MK object model to generate views and forms and sample data for my objects. You may find other creative uses for the object model. BTW If you don't like the 64 bit obj refs (and if you don't that's probably due to working with existing databases), simply don't use the "obj ref" type in your model. Or use it, mark it as isDerived, and implement the method that retrieves it. -Chuck |