def origine_des_annonces_diffusees(self, *args, **kwargs): sources_last_crawl = {} sorted_sources = collections.OrderedDict( sorted(SOURCES.items(), key=lambda x: x[1].label)) for source_name in sorted_sources: try: sources_last_crawl[source_name] = DBSession.query(Log.datetime) \ .filter(Log.source == source_name) \ .order_by(Log.datetime.desc()) \ .limit(1) \ .one()[0] except NoResultFound: sources_last_crawl[source_name] = None return dict(sources=sorted_sources, existing_fields=existing_fields, sources_last_crawl=sources_last_crawl)
def sources(self): sources_last_crawl = {} sorted_sources = collections.OrderedDict(sorted(SOURCES.items(), key=lambda x: x[1].label)) for source_name in sorted_sources: try: sources_last_crawl[source_name] = DBSession.query(Log.datetime) \ .filter(Log.source == source_name) \ .order_by(Log.datetime.desc()) \ .limit(1)\ .one()[0] except NoResultFound: sources_last_crawl[source_name] = None return dict( sources=sorted_sources, existing_fields=existing_fields, sources_last_crawl=sources_last_crawl )