From 8757832f4ec6c3e6b8eefd36e30978928c8f6013 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Mon, 16 Jan 2006 04:46:37 +0000 Subject: [PATCH] assign_mapper will create a default __init__ method if one doesnt exist --- lib/sqlalchemy/mapping/__init__.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/sqlalchemy/mapping/__init__.py b/lib/sqlalchemy/mapping/__init__.py index caaf5485fa..2bcdcabd02 100644 --- a/lib/sqlalchemy/mapping/__init__.py +++ b/lib/sqlalchemy/mapping/__init__.py @@ -13,6 +13,7 @@ import sqlalchemy.schema as schema import sqlalchemy.engine as engine import sqlalchemy.util as util import objectstore +import types as types from mapper import * from properties import * import mapper as mapperlib @@ -133,6 +134,11 @@ def class_mapper(class_): def assign_mapper(class_, *args, **params): params.setdefault("is_primary", True) + if not isinstance(getattr(class_, '__init__'), types.MethodType): + def __init__(self, **kwargs): + for key, value in kwargs.items(): + self.__dict__[key] = value + class_.__init__ = __init__ m = mapper(class_, *args, **params) class_.mapper = m class_.get = m.get -- 2.47.2