34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
from __future__ import unicode_literals
|
|
|
|
from dateutil.parser import parse
|
|
|
|
from django.contrib.auth.models import User
|
|
from django.utils.timezone import now
|
|
|
|
from smart_settings.api import register_settings
|
|
|
|
default_available_functions = {
|
|
'current_date': now().date,
|
|
}
|
|
|
|
default_available_models = {
|
|
'User': User
|
|
}
|
|
|
|
default_available_validators = {
|
|
'Parse date and time': lambda input: parse(input).isoformat(),
|
|
'Parse date': lambda input: parse(input).date().isoformat(),
|
|
'Parse time': lambda input: parse(input).time().isoformat()
|
|
}
|
|
|
|
register_settings(
|
|
namespace='metadata',
|
|
module='metadata.settings',
|
|
settings=[
|
|
# Definition
|
|
{'name': 'AVAILABLE_FUNCTIONS', 'global_name': 'METADATA_AVAILABLE_FUNCTIONS', 'default': default_available_functions},
|
|
{'name': 'AVAILABLE_MODELS', 'global_name': 'METADATA_AVAILABLE_MODELS', 'default': default_available_models},
|
|
{'name': 'AVAILABLE_VALIDATORS', 'global_name': 'METADATA_AVAILABLE_VALIDATORS', 'default': default_available_validators},
|
|
]
|
|
)
|