class appconf.AppConf

A representation of a template tag. For example:

class MyAppConf(AppConf):
    SETTING_1 = "one"
    SETTING_2 = (

Method for each of the app settings for custom configuration which gets the value passed of the class attribute or the appropriate override value of the holder settings, e.g.:

class MyAppConf(AppConf):

    def configure_deployment_mode(self, value):
        if on_production():
            value = "prod"
        return value

The method must return the value to be use for the setting in question.

class AppConf.Meta

An AppConf takes options via a Meta inner class:

class MyAppConf(AppConf):
    SETTING_1 = "one"
    SETTING_2 = (

    class Meta:
        proxy = False
        prefix = 'myapp'
        required = ['SETTING_3', 'SETTING_4']
        holder = 'django.conf.settings'

Explicitly choose a prefix for all settings handled by the AppConf class. If not given, the prefix will be the capitalized class module name.

For example, acme would turn into settings like ACME_SETTING_1.


A list of settings that must be defined. If any of the specified settings are not defined, ImproperlyConfigured will be raised.

New in version 0.6.


The global settings holder to use when looking for overrides and when setting the configured values.

Defaults to 'django.conf.settings'.


A boolean, if set to True will enable proxying attribute access to the holder.