def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name(transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.CharField): adaptor = 'text' if getattr(field, 'choices', None): adaptor = 'choices' elif isinstance(field, models.TextField): adaptor = 'textarea' elif isinstance(field, models.BooleanField): adaptor = 'boolean' elif isinstance(field, models.DateTimeField): adaptor = 'datetime' elif isinstance(field, models.DateField): adaptor = 'date' elif isinstance(field, ForeignKey): adaptor = 'fk' elif isinstance(field, ManyToManyField): adaptor = 'm2mcomma' from inplaceeditform.fields import BaseAdaptorField path_adaptor = adaptor and ((getattr(settings, 'ADAPTOR_INPLACEEDIT', None) and settings.ADAPTOR_INPLACEEDIT.get(adaptor, None)) or (DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None))) if not path_adaptor: return BaseAdaptorField path_module, class_adaptor = ('.'.join(path_adaptor.split('.')[:-1]), path_adaptor.split('.')[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name( transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.CharField): adaptor = 'text' if getattr(field, 'choices', None): adaptor = 'choices' elif isinstance(field, models.TextField): adaptor = 'textarea' elif isinstance(field, models.BooleanField): adaptor = 'boolean' elif isinstance(field, models.DateTimeField): adaptor = 'datetime' elif isinstance(field, models.DateField): adaptor = 'date' elif isinstance(field, ForeignKey): adaptor = 'fk' elif isinstance(field, ManyToManyField): adaptor = 'm2mcomma' from inplaceeditform.fields import BaseAdaptorField path_adaptor = adaptor and ( (getattr(settings, 'ADAPTOR_INPLACEEDIT', None) and settings.ADAPTOR_INPLACEEDIT.get(adaptor, None)) or (DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None))) if not path_adaptor: return BaseAdaptorField path_module, class_adaptor = ('.'.join(path_adaptor.split('.')[:-1]), path_adaptor.split('.')[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name(transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.URLField): adaptor = 'url' elif isinstance(field, models.EmailField): adaptor = 'email' elif isinstance(field, models.CharField): adaptor = 'text' elif isinstance(field, models.TextField): adaptor = 'textarea' elif isinstance(field, models.NullBooleanField): adaptor = 'nullboolean' elif isinstance(field, models.BooleanField): adaptor = 'boolean' elif isinstance(field, models.DateTimeField): adaptor = 'datetime' elif isinstance(field, models.DateField): adaptor = 'date' elif isinstance(field, models.TimeField): adaptor = 'time' elif isinstance(field, models.IntegerField): adaptor = 'integer' elif isinstance(field, models.FloatField): adaptor = 'float' elif isinstance(field, models.DecimalField): adaptor = 'decimal' elif isinstance(field, ForeignKey): adaptor = 'fk' elif isinstance(field, ManyToManyField): adaptor = 'm2mcomma' elif isinstance(field, models.ImageField): adaptor = 'image' elif isinstance(field, models.FileField): adaptor = 'file' elif gismodels: if isinstance(field, gismodels.PointField): adaptor = 'point' if getattr(field, 'choices', None): adaptor = 'choices' from inplaceeditform.fields import BaseAdaptorField path_adaptor = adaptor and (inplace_settings.ADAPTOR_INPLACEEDIT.get(adaptor, None) or DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None)) if not path_adaptor and adaptor: return get_adaptor_class(obj=obj, field_name=field_name) elif not path_adaptor: return BaseAdaptorField path_module, class_adaptor = ('.'.join(path_adaptor.split('.')[:-1]), path_adaptor.split('.')[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = getattr(obj, field_name) except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name( transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.URLField): adaptor = 'url' elif isinstance(field, models.EmailField): adaptor = 'email' elif isinstance(field, models.CharField): adaptor = 'text' elif isinstance(field, models.TextField): adaptor = 'textarea' elif isinstance(field, models.NullBooleanField): adaptor = 'nullboolean' elif isinstance(field, models.BooleanField): adaptor = 'boolean' elif isinstance(field, models.DateTimeField): adaptor = 'datetime' elif isinstance(field, models.DateField): adaptor = 'date' elif isinstance(field, models.TimeField): adaptor = 'time' elif isinstance(field, models.IntegerField): adaptor = 'integer' elif isinstance(field, models.FloatField): adaptor = 'float' elif isinstance(field, models.DecimalField): adaptor = 'decimal' elif isinstance(field, ForeignKey): adaptor = 'fk' elif isinstance(field, ManyToManyField): adaptor = 'm2mcomma' elif isinstance(field, models.ImageField): adaptor = 'image' elif isinstance(field, models.FileField): adaptor = 'file' if getattr(field, 'choices', None): adaptor = 'choices' from inplaceeditform.fields import BaseAdaptorField path_adaptor = adaptor and (inplace_settings.ADAPTOR_INPLACEEDIT.get( adaptor, None) or DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None)) if not path_adaptor and adaptor: return get_adaptor_class(obj=obj, field_name=field_name) elif not path_adaptor: return BaseAdaptorField path_module, class_adaptor = ('.'.join(path_adaptor.split('.')[:-1]), path_adaptor.split('.')[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name( transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.BooleanField): adaptor = 'boolean' elif isinstance(field, models.DateField): adaptor = 'date' elif isinstance(field, models.DateTimeField): adaptor = 'datetime' elif isinstance(field, ForeignKey): adaptor = 'fk' elif isinstance(field, ManyToManyField): adaptor = 'm2mcomma' elif isinstance(field, models.ImageField): adaptor = 'image' elif isinstance(field, models.FileField): adaptor = 'file' elif isinstance(field, (models.IntegerField, models.DecimalField)): adaptor = 'number' if getattr(field, 'choices', None): adaptor = 'choices' elif isinstance(field, models.CharField): adaptor = 'text' if getattr(field, 'choices', None): adaptor = 'choices' elif isinstance(field, models.TextField): adaptor = 'textarea' else: adaptor = 'default' path_adaptor = ((getattr(settings, 'ADAPTOR_INPLACEEDIT', None) and settings.ADAPTOR_INPLACEEDIT.get(adaptor, None)) or (DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None))) if not path_adaptor and adaptor: return get_adaptor_class(obj=obj, field_name=field_name) parts = path_adaptor.split('.') path_module, class_adaptor = ('.'.join(parts[:-1]), parts[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name(transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.BooleanField): adaptor = "boolean" elif isinstance(field, models.DateField): adaptor = "date" elif isinstance(field, models.DateTimeField): adaptor = "datetime" elif isinstance(field, ForeignKey): adaptor = "fk" elif isinstance(field, ManyToManyField): adaptor = "m2mcomma" elif isinstance(field, models.ImageField): adaptor = "image" elif isinstance(field, models.FileField): adaptor = "file" elif isinstance(field, (models.IntegerField, models.DecimalField)): adaptor = "number" if getattr(field, "choices", None): adaptor = "choices" elif isinstance(field, models.CharField): adaptor = "text" if getattr(field, "choices", None): adaptor = "choices" elif isinstance(field, models.TextField): adaptor = "textarea" else: adaptor = "default" path_adaptor = ( getattr(settings, "ADAPTOR_INPLACEEDIT", None) and settings.ADAPTOR_INPLACEEDIT.get(adaptor, None) ) or (DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None)) if not path_adaptor and adaptor: return get_adaptor_class(obj=obj, field_name=field_name) parts = path_adaptor.split(".") path_module, class_adaptor = (".".join(parts[:-1]), parts[-1]) return getattr(import_module(path_module), class_adaptor)
def get_adaptor_class(adaptor=None, obj=None, field_name=None): if not adaptor: try: field = obj._meta.get_field_by_name(field_name)[0] except FieldDoesNotExist: if has_transmeta: field = obj._meta.get_field_by_name(transmeta.get_real_fieldname(field_name))[0] if isinstance(field, models.CharField): adaptor = "text" if getattr(field, "choices", None): adaptor = "choices" elif isinstance(field, models.TextField): adaptor = "textarea" elif isinstance(field, models.BooleanField): adaptor = "boolean" elif isinstance(field, models.DateTimeField): adaptor = "datetime" elif isinstance(field, models.DateField): adaptor = "date" elif isinstance(field, ForeignKey): adaptor = "fk" elif isinstance(field, ManyToManyField): adaptor = "m2mcomma" elif isinstance(field, models.ImageField): adaptor = "image" elif isinstance(field, models.FileField): adaptor = "file" from inplaceeditform.fields import BaseAdaptorField path_adaptor = adaptor and ( inplace_settings.ADAPTOR_INPLACEEDIT.get(adaptor, None) or DEFAULT_ADAPTOR_INPLACEEDIT.get(adaptor, None) ) if not path_adaptor and adaptor: return get_adaptor_class(obj=obj, field_name=field_name) elif not path_adaptor: return BaseAdaptorField path_module, class_adaptor = (".".join(path_adaptor.split(".")[:-1]), path_adaptor.split(".")[-1]) return getattr(import_module(path_module), class_adaptor)