Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #43133

Re: classes and sub classes?

From Robert Kern <robert.kern@gmail.com>
Subject Re: classes and sub classes?
Date 2013-04-09 13:15 +0530
References <CACQBTrROkAUTNdNbb=Mjg3HBs2koEaZcOCz=417BQFO=7NEhFQ@mail.gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.325.1365493556.3114.python-list@python.org> (permalink)

Show all headers | View raw


On 2013-04-09 11:20, Morten Guldager wrote:
> 'Aloha Friends!
>
> I'm about to write an API against a huge propitiatory Oracle based network
> inventory database. The database have many different concepts stored in it's
> tables, can one concept can span over multiple tables.
>
> I would like to write a class for accessing each concept, but only have a single
> database connection throughout the whole program.
>
> I imagine some code along these lines, but cant figure out how to declare the
> classes that will make it work:
>
> # create a connection to the database and perform come basic login and
> initialization
> nib = NwInvDb("scott/tiger@ora")
> # find a device by ip
> interesting_device = nib.Device.lookup_by_ip("192.168.1.1")
>
> In this example I access the concept Device.
>
> Should I make the Device class inherit from NwInvDb? Or should I keep them
> separate? Later on I think I will even have to make some sort of sub-concepts,
> but lets postpone that game until I really have really seen the need!

You probably want to use an off-the-shelf ORM (Object Relational Mapper) instead 
of writing your own ad hoc ORM.

   http://www.sqlalchemy.org/

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
  that is made terrible by our own mad attempt to interpret it as though it had
  an underlying truth."
   -- Umberto Eco

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: classes and sub classes? Robert Kern <robert.kern@gmail.com> - 2013-04-09 13:15 +0530

csiph-web