1 #__connection__ = hub = PackageHub('infovacuum')
4 pkg_resources.require("SQLAlchemy>=0.4.9")
5 pkg_resources.require("Elixir>=0.4.0")
7 # with this line enabled, other models cannot import this file.
8 # it results in the wrong metadata value being loaded, I think.
9 #from turbogears.database import metadata, mapper
12 #pkg_resources.require("SQLObject>=0.7.1")
13 #from turbogears.database import PackageHub, AutoConnectHub
14 #from turbogears import config
15 #uri = config.get("sqlobject.dburi")
16 #from sqlobject import connectionForURI,sqlhub
17 #sqlhub.processConnection = connectionForURI(uri)
20 # NOTE: this try, will allow external modules to import the model without
21 # requring the turbogears garbage.
23 print traceback.print_exc()
26 from elixir import Entity, Field, OneToMany, ManyToOne, ManyToMany
27 from elixir import options_defaults, using_options, setup_all
28 from elixir import String, Unicode, Integer, DateTime
29 options_defaults['autosetup'] = False
31 from monitor.database.dborm import mon_metadata, mon_session
32 __metadata__ = mon_metadata
33 __session__ = mon_session
35 def findby_or_create(cls, if_new_set={}, **kwargs):
36 result = cls.get_by(**kwargs)
38 result = cls(**kwargs)
39 result.set(**if_new_set)
41 Entity.findby_or_create = classmethod(findby_or_create)
43 from monitor.database.infovacuum.model.actionrecord import *
44 from monitor.database.infovacuum.model.findbadrecord import *
45 from monitor.database.infovacuum.model.historyrecord import *