Skip to content

Commit e87df95

Browse files
committed
Fix CMS_COMPONENT_FIELDS setting
1 parent a29cb05 commit e87df95

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

djangocms_frontend/component_pool.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ class CMSAutoComponentDiscovery:
3131
"djanghocms_text": "djangocms_text.fields.TextFormField",
3232
"djanghocms_text_ckeditor": "djangocms_text_ckeditor.fields.TextFormField",
3333
"djangocms_link": "djangocms_link.fields.LinkFormField",
34-
"djangocms_frontend.contrib.image": "djangocms_frontend.contrib.image.fields.ImageFormField",
35-
"djangocms_frontend.contrib.icon": "djangocms_frontend.contrib.icon.fields.IconPickerField",
34+
"djangocms_frontend": [
35+
"djangocms_frontend.contrib.image.fields.ImageFormField",
36+
"djangocms_frontend.contrib.icon.fields.IconPickerField",
37+
],
3638
}
3739

3840
def __init__(self, register_to):
@@ -45,9 +47,13 @@ def __init__(self, register_to):
4547
def get_field_context(self) -> dict:
4648
field_context = {}
4749
for key, value in self.default_field_context.items():
48-
if apps.is_installed(key) and "." in value:
49-
module, field_name = value.rsplit(".", 1)
50-
field_context[field_name] = importlib.import_module(module).__dict__[field_name]
50+
if apps.is_installed(key):
51+
if not isinstance(value, list):
52+
value = [value]
53+
for field in value:
54+
if "." in field:
55+
module, field_name = field.rsplit(".", 1)
56+
field_context[field_name] = importlib.import_module(module).__dict__[field_name]
5157
return field_context
5258

5359
@staticmethod

0 commit comments

Comments
 (0)