Python flask_sqlalchemy.Model() Examples
The following are 4
code examples of flask_sqlalchemy.Model().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
flask_sqlalchemy
, or try the search function
.
Example #1
Source File: __init__.py From evesrp with BSD 2-Clause "Simplified" License | 5 votes |
def _patch_metadata(): naming_convention = { 'fk': ('fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s' '_%(referred_column_0_name)s'), 'pk': 'pk_%(table_name)s', 'ix': 'ix_%(table_name)s_%(column_0_name)s', 'ck': 'ck_%(table_name)s_%(constraint_name)s', 'uq': 'uq_%(table_name)s_%(column_0_name)s', } metadata = MetaData(naming_convention=naming_convention) base = declarative_base(cls=flask_sqlalchemy.Model, name='Model', metaclass=flask_sqlalchemy._BoundDeclarativeMeta, metadata=metadata) base.query = flask_sqlalchemy._QueryProperty(db) db.Model = base
Example #2
Source File: extensions.py From flask-shop with BSD 3-Clause "New" or "Revised" License | 5 votes |
def make_declarative_base(self, model, metadata=None): if not isinstance(model, DeclarativeMeta): model = declarative_base( cls=model, name="Model", metadata=metadata, metaclass=CombinedMeta ) if metadata is not None and model.metadata is not metadata: model.metadata = metadata if not getattr(model, "query_class", None): model.query_class = self.Query model.query = _QueryProperty(self) return model
Example #3
Source File: magic.py From flask-react-spa with MIT License | 5 votes |
def is_model(name, obj): is_model_class = inspect.isclass(obj) and issubclass(obj, Model) base_classes = ('Model',) return is_model_class and name not in base_classes
Example #4
Source File: base.py From safrs with GNU General Public License v3.0 | 4 votes |
def __init__(self, *args, **kwargs): """ Object initialization: - set the named attributes and add the object to the database - create relationships """ # All SAFRSBase subclasses have a jsonapi id, passed as "id" in web requests # if no id is supplied, generate a new safrs id (uuid4) # instantiate the id with the "id_type", this will validate the id if # validation is implemented kwargs["id"] = self.id_type(kwargs.get("id", None)) # Initialize the attribute values: these have been passed as key-value pairs in the # kwargs dictionary (from json in case of a web request). # Retrieve the values from each attribute (== class table column) db_args = {} for column_name in self._s_column_names: if column_name in kwargs: attr_val = self._s_parse_attr_value(column_name, kwargs.get(column_name)) db_args[column_name] = attr_val # Add the related instances for rel_name in self._s_relationship_names: if rel_name in kwargs: rel_attr = kwargs.get(rel_name) db_args[rel_name] = rel_attr # db_args now contains the class attributes. Initialize the DB model with them # All subclasses should have the DB.Model as superclass. # (SQLAlchemy doesn't work when using DB.Model as SAFRSBase superclass) try: safrs.DB.Model.__init__(self, **db_args) except Exception as exc: # OOPS .. things are going bad, this might happen using sqla automap safrs.log.error("Failed to instantiate {}".format(self)) safrs.log.debug("db args: {}".format(db_args)) safrs.log.exception(exc) safrs.DB.Model.__init__(self) if self._s_auto_commit: # Add the object to the database if specified by the class parameters safrs.DB.session.add(self) try: safrs.DB.session.commit() except sqlalchemy.exc.SQLAlchemyError as exc: # Exception may arise when a DB constrained has been violated (e.g. duplicate key) raise GenericError(exc)