Path: csiph.com!usenet.pasdenom.info!dedibox.gegeweb.org!gegeweb.eu!nntpfeed.proxad.net!proxad.net!feeder1-2.proxad.net!usenet-fr.net!nerim.net!novso.com!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.005 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'python,': 0.02; 'orm': 0.09; 'sat,': 0.15; 'filename:fname piece:signature': 0.16; 'from:addr:awilliam': 0.16; 'from:addr:whitemice.org': 0.16; 'from:name:adam tauno williams': 0.16; 'rdbms': 0.16; 'received:72.14.190': 0.16; 'received:72.14.190.87': 0.16; 'received:mail.wmmi.net': 0.16; 'received:wmmi.net': 0.16; 'reply- to:addr:awilliam': 0.16; 'reply-to:addr:whitemice.org': 0.16; 'sqlalchemy': 0.16; 'subject:Object': 0.16; 'subject:access': 0.16; 'wrote:': 0.17; 'instance,': 0.17; '(in': 0.18; 'app': 0.19; 'received:72.14': 0.20; 'fairly': 0.21; "i've": 0.23; 'header:In- Reply-To:1': 0.25; 'question': 0.27; "doesn't": 0.28; '-0700,': 0.29; 'implies': 0.29; 'case,': 0.29; 'probably': 0.29; "i'm": 0.29; 'that.': 0.30; 'subject: ?': 0.30; 'point': 0.31; 'subject:data': 0.33; 'to:addr:python-list': 0.33; 'something': 0.35; 'but': 0.36; "didn't": 0.36; 'client': 0.36; 'skip:t 40': 0.37; 'why': 0.37; 'quite': 0.37; 'subject:: ': 0.38; 'fact': 0.38; 'some': 0.38; 'nothing': 0.38; 'to:addr:python.org': 0.39; 'received:192': 0.39; 'received:192.168': 0.40; 'your': 0.60; 'email addr:gmail.com': 0.63; 'else.': 0.65; 'header:Reply-To:1': 0.68; 'reply-to:no real name:2**0': 0.72; '(they': 0.84; 'amazing,': 0.84; 'subject:good': 0.84 Subject: Re: Object Models - decoupling data access - good examples ? From: Adam Tauno Williams To: python-list@python.org Date: Tue, 07 Aug 2012 09:00:25 -0400 In-Reply-To: References: Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="=-4x0D1wSyqeruCziZUtlt" X-Mailer: Evolution 3.2.3 Mime-Version: 1.0 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: awilliam@whitemice.org List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 49 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1344346238 news.xs4all.nl 6961 [2001:888:2000:d::a6]:49187 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:26705 --=-4x0D1wSyqeruCziZUtlt Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, 2012-08-04 at 20:26 -0700, shearichard@gmail.com wrote:=20 > >=20 > > Just out of curiosity, why do you eschew ORMs? > Good question ! > I'm not anti-ORM (in fact in many circs I'm quite pro-ORM) but for > some time I've been working with a client who doesn't want ORMs used > (they do have quite good reasons for this although probably not as > good as they think).=20 So call the ORM something else. > I was interested to know, given that was the case, how you might - in > Python, go about structuring an app which didn't use an ORM but which > did use a RDBMS fairly intensively. You'd reinvent the ORM calling it something else - because an ORM is what you are describing. This is just a case of those-who-will-not-use-are-doomed-to-recreate. > I take your point about having "rolled my own ORM" - lol - but I can > assure you what's in that 'bardb' is a pretty thin layer over the SQL > and nothing like the, pretty amazing, functionality of, for instance, > >SQLAlchemy. This implies that SQLAlchemy is 'fat'. I don't see any evidence of that. It is comprehensive so when you encounter something you can be confident it is up to the challange. --=-4x0D1wSyqeruCziZUtlt Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) iEYEABECAAYFAlAhEWkACgkQLRePpNle04N/dgCfSklM1oSbUXNuEy4qP2i4YZ00 zNYAniMK5d6rTPLQ8wD5vbj53W0A/eUQ =8Zzb -----END PGP SIGNATURE----- --=-4x0D1wSyqeruCziZUtlt--