def _create_product_tables_for_plugins(self, db): self.log.debug("creating additional db tables for %s plugin." % PLUGIN_NAME) db_connector, dummy = DatabaseManager(self.env)._get_connector() for statement in db_connector.to_sql(ProductSetting._get_schema()): db(statement)
from trac.wiki.admin import WikiAdmin from trac.wiki.model import WikiPage from bhdashboard import wiki from bhdashboard.util.translation import _ try: from multiproduct.model import Product, ProductResourceMap, ProductSetting except ImportError: Product = ProductResourceMap = ProductSetting = None schema = tracschema[:] if Product is not None: schema.extend([ Product._get_schema(), ProductResourceMap._get_schema(), ProductSetting._get_schema() ]) structure = dict([(table.name, [col.name for col in table.columns]) for table in schema]) # add product for any columns required for table in ['ticket']: structure[table].append('product') # probably no point in keeping data from these tables ignored = ['auth_cookie', 'session', 'session_attribute', 'cache'] IGNORED_DB_STRUCTURE = dict([(k, structure[k]) for k in ignored]) DB_STRUCTURE = dict([(k, structure[k]) for k in structure if k not in ignored])
def _create_product_tables_for_plugins(self, db): self.log.debug("creating additional db tables for %s plugin." % PLUGIN_NAME) db_connector, dummy = DatabaseManager(self.env)._get_connector() for statement in db_connector.to_sql(ProductSetting._get_schema()): db(statement)
from trac.db_default import schema as tracschema from trac.util.text import printout from trac.util.translation import _ from trac.wiki.admin import WikiAdmin from trac.wiki.model import WikiPage from bhdashboard import wiki try: from multiproduct.model import Product, ProductResourceMap, ProductSetting except ImportError: Product = ProductResourceMap = ProductSetting = None schema = tracschema[:] if Product is not None: schema.extend([Product._get_schema(), ProductResourceMap._get_schema(), ProductSetting._get_schema()]) structure = dict([(table.name, [col.name for col in table.columns]) for table in schema]) # add product for any columns required for table in ['ticket']: structure[table].append('product') # probably no point in keeping data from these tables ignored = ['auth_cookie', 'session', 'session_attribute', 'cache'] IGNORED_DB_STRUCTURE = dict([(k, structure[k]) for k in ignored]) DB_STRUCTURE = dict([(k, structure[k]) for k in structure if k not in ignored]) class BloodhoundAdmin(Component):