diff --git a/.gitignore b/.gitignore index 9f11b755..3876009d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ .idea/ +django_simpleui.egg-info +dist \ No newline at end of file diff --git a/simpleui/templatetags/simpletags.py b/simpleui/templatetags/simpletags.py index 7efc52ec..2282d565 100644 --- a/simpleui/templatetags/simpletags.py +++ b/simpleui/templatetags/simpletags.py @@ -381,8 +381,6 @@ def get_model_fields(model, base=None): list.append(('{}__{}'.format(base, f.name), label)) else: list.append((f.name, label)) - if isinstance(f, ForeignKey): - list.extend(get_model_fields(f.related_model, f.name)) return list @@ -391,8 +389,13 @@ def get_model_fields(model, base=None): def search_placeholder(context): cl = context.get('cl') + # 取消递归,只获取2级 fields = get_model_fields(cl.model) + for f in cl.model._meta.fields: + if isinstance(f, ForeignKey): + fields.extend(get_model_fields(f.related_model, f.name)) + verboses = [] for s in cl.search_fields: