mirror of
https://github.com/SectorLabs/django-localized-fields.git
synced 2025-04-24 19:32:53 +03:00
42 lines
921 B
Python
42 lines
921 B
Python
from typing import List
|
|
|
|
from django.conf import settings
|
|
|
|
|
|
def get_language_codes() -> List[str]:
|
|
"""Gets a list of all available language codes.
|
|
|
|
This looks at your project's settings.LANGUAGES
|
|
and returns a flat list of the configured
|
|
language codes.
|
|
|
|
Arguments:
|
|
A flat list of all availble language codes
|
|
in your project.
|
|
"""
|
|
|
|
return [lang_code for lang_code, _ in settings.LANGUAGES]
|
|
|
|
|
|
def resolve_object_property(obj, path: str):
|
|
"""Resolves the value of a property on an object.
|
|
|
|
Is able to resolve nested properties. For example,
|
|
a path can be specified:
|
|
|
|
'other.beer.name'
|
|
|
|
Raises:
|
|
AttributeError:
|
|
In case the property could not be resolved.
|
|
|
|
Returns:
|
|
The value of the specified property.
|
|
"""
|
|
|
|
value = obj
|
|
for path_part in path.split("."):
|
|
value = getattr(value, path_part)
|
|
|
|
return value
|