def register(cls): '''Utility for registering the managers to the current backend. This should be used with care in parallel testing. All registered models will be unregistered after the :meth:`tearDown` method.''' if cls.backend: for model in cls.models: odm.register(model, cls.backend)
from datetime import date from stdnet import odm from stdnet.contrib.timeseries.models import TimeSeries class FinanceTimeSeries(TimeSeries): ticker = odm.SymbolField(unique=True) def __unicode__(self): return '%s - %s' % (self.ticker, self.data.size()) if __name__ == '__main__': odm.register(FinanceTimeSeries) ts = FinanceTimeSeries(ticker='GOOG').save() ts.data[date(2010, 2, 25)] = 610.5 ts.save()
from stdnet import odm from stdnet.odm.fields import SymbolField, CharField, IntegerField, DateTimeField from stdnet.odm.models import StdModel from config import Config class Mirror(StdModel): name = SymbolField(unique=True) age = IntegerField(index=True) lat = CharField() lon = CharField() def __unicode__(self): return u"{self.name} -> {self.lat}:{self.lon}".format(self=self) @staticmethod def get_nearest_mirror(address): from distance import DistanceCalculator return DistanceCalculator().get_nearest_mirror(address) @staticmethod def get_mirror_distances(address): from distance import DistanceCalculator, GeoIPLookupError try: return DistanceCalculator().get_mirror_distances(address) except GeoIPLookupError: return {} odm.register(Mirror, Config.STDNET_DB_URL)
from datetime import date from stdnet import odm from stdnet.contrib.timeseries.models import TimeSeries class FinanceTimeSeries(TimeSeries): ticker = odm.SymbolField(unique = True) def __unicode__(self): return '%s - %s' % (self.ticker,self.data.size()) if __name__ == '__main__': odm.register(FinanceTimeSeries) ts = FinanceTimeSeries(ticker = 'GOOG').save() ts.data[date(2010,2,25)] = 610.5 ts.save()