mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-28 11:26:26 -06:00
Fix tom-select errors related to field id. Break out render_field function for column filters
This commit is contained in:
parent
0309796bbb
commit
84151cbc1a
@ -5,7 +5,7 @@
|
||||
<i class="mdi mdi-filter-settings" style="font-size: 1.25rem;"> </i>
|
||||
</a>
|
||||
<div class="dropdown-menu">
|
||||
{% render_field form_field table=table request=request %}
|
||||
{% render_table_filter_field form_field table=table request=request %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
@ -58,10 +58,23 @@ def widget_type(field):
|
||||
#
|
||||
|
||||
@register.inclusion_tag('form_helpers/render_field.html')
|
||||
def render_field(field, bulk_nullable=False, label=None, table=None, request=None):
|
||||
def render_field(field, bulk_nullable=False, label=None):
|
||||
"""
|
||||
Render a single form field from template
|
||||
"""
|
||||
|
||||
return {
|
||||
'field': field,
|
||||
'label': label or field.label,
|
||||
'bulk_nullable': bulk_nullable,
|
||||
}
|
||||
|
||||
|
||||
@register.inclusion_tag('form_helpers/render_field.html')
|
||||
def render_table_filter_field(field, table=None, request=None):
|
||||
"""
|
||||
Render a single form field for table column filters from template
|
||||
"""
|
||||
url = ""
|
||||
|
||||
# Handle filter forms
|
||||
@ -74,18 +87,20 @@ def render_field(field, bulk_nullable=False, label=None, table=None, request=Non
|
||||
elif request:
|
||||
url = querystring(request, **kwargs)
|
||||
# Set HTMX args
|
||||
if hasattr(field.field, 'widget'):
|
||||
field.field.widget.attrs.update({
|
||||
'hx-get': url if url else '#',
|
||||
'hx-push-url': "true",
|
||||
'hx-target': '#object_list',
|
||||
'hx-trigger': 'hidden.bs.dropdown from:closest .dropdown'
|
||||
})
|
||||
|
||||
if hasattr(field.field, 'widget'):
|
||||
field.field.widget.attrs.update({
|
||||
'id': f'table_filter_id_{field.name}',
|
||||
'hx-get': url if url else '#',
|
||||
'hx-push-url': "true",
|
||||
'hx-target': '#object_list',
|
||||
'hx-trigger': 'hidden.bs.dropdown from:closest .dropdown'
|
||||
})
|
||||
|
||||
return {
|
||||
'field': field,
|
||||
'label': label or field.label if not table else None,
|
||||
'bulk_nullable': bulk_nullable,
|
||||
'label': None,
|
||||
'bulk_nullable': False,
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user