django_program.settings¶
Typed configuration for django-program.
Reads a single DJANGO_PROGRAM dict from Django settings and exposes it as
composed, frozen dataclasses with sensible defaults.
Usage:
from django_program.settings import get_config
config = get_config()
config.stripe.secret_key
config.pretalx.base_url
config.currency
Functions
Build and return the program configuration. |
Classes
Feature toggles for enabling/disabling django-program modules and UIs. |
|
PSF sponsorship API configuration for PyCon US conferences. |
|
Pretalx schedule API configuration. |
|
Top-level django-program configuration. |
|
Stripe payment gateway configuration. |
- class django_program.settings.StripeConfig[source]¶
Bases:
objectStripe payment gateway configuration.
- Parameters:
- class django_program.settings.PretalxConfig[source]¶
Bases:
objectPretalx schedule API configuration.
- Parameters:
- __init__(base_url='https://pretalx.com', token=None, schedule_delete_guard_enabled=True, schedule_delete_guard_min_existing_slots=5, schedule_delete_guard_max_fraction_removed=0.4)¶
- class django_program.settings.PSFSponsorConfig[source]¶
Bases:
objectPSF sponsorship API configuration for PyCon US conferences.
- class django_program.settings.FeaturesConfig[source]¶
Bases:
objectFeature toggles for enabling/disabling django-program modules and UIs.
Module toggles control backend functionality (registration, sponsors, etc.) while UI toggles control the public-facing and management interfaces. The
all_ui_enabledflag acts as a master switch for all UI toggles.All features are enabled by default. Set to
FalseinDJANGO_PROGRAM['features']to disable.- Parameters:
- __init__(registration_enabled=True, sponsors_enabled=True, travel_grants_enabled=True, programs_enabled=True, pretalx_sync_enabled=True, public_ui_enabled=True, manage_ui_enabled=True, all_ui_enabled=True)¶
- class django_program.settings.ProgramConfig[source]¶
Bases:
objectTop-level django-program configuration.
- Parameters:
stripe (
StripeConfig)pretalx (
PretalxConfig)psf_sponsors (
PSFSponsorConfig)features (
FeaturesConfig)cart_expiry_minutes (
int)pending_order_expiry_minutes (
int)order_reference_prefix (
str)currency (
str)currency_symbol (
str)max_grant_amount (
int)
- stripe: StripeConfig¶
- pretalx: PretalxConfig¶
- psf_sponsors: PSFSponsorConfig¶
- features: FeaturesConfig¶
- __init__(stripe=<factory>, pretalx=<factory>, psf_sponsors=<factory>, features=<factory>, cart_expiry_minutes=30, pending_order_expiry_minutes=15, order_reference_prefix='ORD', currency='USD', currency_symbol='$', max_grant_amount=3000)¶
- Parameters:
stripe (
StripeConfig)pretalx (
PretalxConfig)psf_sponsors (
PSFSponsorConfig)features (
FeaturesConfig)cart_expiry_minutes (
int)pending_order_expiry_minutes (
int)order_reference_prefix (
str)currency (
str)currency_symbol (
str)max_grant_amount (
int)
- django_program.settings.get_config()[source]¶
Build and return the program configuration.
Reads
settings.DJANGO_PROGRAM(a plain dict) and returns a frozenProgramConfig. The result is cached; the cache is cleared automatically when Django’ssetting_changedsignal fires (e.g. insideoverride_settings).- Return type: