hvad.descriptors

BaseDescriptor

class hvad.descriptors.BaseDescriptor

Base class for the descriptors, should not be used directly.

opts

The options (meta) of the model.

translation(self, instance)

Get the cached translation object on an instance. If no translation is cached yet, use the get_language() function to get the current language, load it from the database and cache it on the instance.

If no translation is cached, and no translation exists for current language, raise an AttributeError.

TranslatedAttribute

class hvad.descriptors.TranslatedAttribute

Standard descriptor for translated fields on the Shared Model.

name

The name of this attribute

opts

The options (meta) of the model.

__get__(self, instance, instance_type=None)

Gets the attribute from the translation object using BaseDescriptor.translation(). If no instance is given (used from the model instead of an instance) it returns the field object itself, allowing introspection of the model.

Starting from Django 1.7, calling getattr() on a translated field before the App Registry is initialized raises an AttributeError.

__set__(self, instance, value)

Sets the value on the attribute on the translation object using BaseDescriptor.translation() if an instance is given, if no instance is given, raises an AttributeError.

__delete__(self, instance)

Deletes the attribute on the translation object using BaseDescriptor.translation() if an instance is given, if no instance is given, raises an AttributeError.

LanguageCodeAttribute

class hvad.descriptors.LanguageCodeAttribute

The language code descriptor is different than the other fields, since it’s readonly. The getter is inherited from TranslatedAttribute.

__set__(self, instance, value)

Raises an attribute error.

__delete__(self, instance)

Raises an attribute error.