Avocado settings are defined as a dictionary, named AVOCADO, with each key corresponding to a setting listed below:

    'SIMPLE_TYPE_MAP': { ... },


When this flag is set to True, those methods decorated with cached_method will have their results cached indefinitely. When False, the methods are called normally and the results never cached.

This setting defaults to True.


DataField datatypes from Avocado's perspective are used purely as metadata for the purposes of making the underlying data accessible.

This setting is used to customize what is returned by the f.simple_type property. The default datatype comes from the internal datatype of a the model field's get_internal_type() method. Any of these default datatypes can be mapped to some other datatype.

Datatypes in this context should be simple, for example not differentiating between int, float, or Decimal. They are all just numbers, to that is the datatype.

These datatypes help define how input is validated and which operators are allowed.


A mapping between the client-friendly datatypes and sensible operators that will be used to validate a query condition. In many cases, these types support more operators than what are defined, but are not include because they are not commonly used.


A general mapping of formfield overrides for all subclasses. the mapping is similar to the SIMPLE_TYPE_MAP, but the values reference internal formfield classes, that is integer -> IntegerField. in many cases, the validation performed may need to be a bit less restrictive than what the is actually necessary.


The maximum number of distinct values allowed for setting the enumerable flag on DataField instances during the init process. This will only be applied to fields with non-text strings types and booleans.


Flag for enabling the history API.


The maximum size of a user's history. If the value is an integer, this is the maximum number of allowed items in the user's history. Set to None (or 0) to enable unlimited history. Note, in order to enforce this limit, the avocado history --prune command must be executed to remove the oldest history from each user based on this value.


The app that the metadata migrations will be created for. This must be defined to use the avocado migration command.


The directory where the metadata fixtures will be written to. If not defined, it will default to the fixtures directory in the app defined by METADATA_MIGRATION_APP.


The suffix of the metadata fixtures. Default is avocado_metadata.


The suffix of the South migration scripts for migrating the metadata. Default is avocado_metadata_migration.


A dict of query processors class imports by name.