В Django пользовательский MultiWidget, как можно получить идентификаторы подвиджетов
В Django, как можно получить идентификаторы подвиджетов, которые добавлены в пользовательские MultiWidget
Например, если я хочу прикрепить код JavaScript к отображаемым виджетам, как я могу это сделать?
1 ответ
В обычных пользовательских шаблонах django шаблон auto id состоит из двух частей, разделенных подчеркиванием id_widget-name, но в custom MultiWidget
шаблон идентификатора всех подвиджетов состоит из трех частей: id_widget-name_widget-index, и мы можем сделать авто-идентификаторы виджетов похожими ниже:
class MyMultiWidget(forms.MultiWidget):
...
def render(self, name, value, attrs=None):
ids = ['id_%s_%d' % (name, index) for index in range(len(self.widgets))]
...