sqlalchemyseed.seeder ===================== .. py:module:: sqlalchemyseed.seeder .. autoapi-nested-parse:: Seeder module Module Contents --------------- .. py:class:: AbstractSeeder Bases: :py:obj:`abc.ABC` AbstractSeeder class .. py:method:: seed(entities) :abstractmethod: Seed data .. py:property:: instances :abstractmethod: Seeded instances .. py:class:: DynamicSeeder DynamicSeeder class .. py:class:: HybridSeeder(session: sqlalchemy.orm.Session, ref_prefix: str = '!', strict: bool = False) Bases: :py:obj:`AbstractSeeder` HybridSeeder class. Accepts 'filter' key for referencing children. .. py:method:: get_model_class(entity, parent: InstanceAttributeTuple) .. py:method:: seed(entities) Seed data .. py:property:: instances Seeded instances .. py:attribute:: ref_prefix :value: '!' .. py:attribute:: session .. py:attribute:: strict :value: False .. py:class:: InstanceAttributeTuple Bases: :py:obj:`NamedTuple` Instrance and attribute name tuple .. py:attribute:: attr_name :type: str .. py:attribute:: instance :type: object .. py:class:: Seeder(session: sqlalchemy.orm.Session = None, ref_prefix='!', strict=False) Basic Seeder class .. py:method:: seed(entities: Union[list, dict], add_to_session=True) Seed method .. py:property:: instances :type: tuple Returns instances of the seeded entities .. py:attribute:: ref_prefix :value: '!' .. py:attribute:: session :value: None .. py:attribute:: strict :value: False .. py:function:: filter_kwargs(kwargs: dict, class_, ref_prefix, strict=False) Filters kwargs, dropping keys that name a relationship attribute. A non-prefixed key that resolves to a relationship is a forgotten ``ref_prefix`` (gap #3): such a key is silently ignored by the model constructor. When ``strict`` is True this raises; otherwise it warns and drops the key (preserving historical behavior).