Как поместить ссылку в поле ModelChoiceField empty_label?
Я работаю над приложением с формой, которая является ModelForm. У меня есть поля выбора для внешних ключей модели, которые отображают все объекты связанных таблиц. Поскольку в таблице много объектов, я хотел бы отобразить только некоторые из них и иметь опцию exta, при нажатии на которую отображается что-то вроде модала со списком всех объектов таблицы.
Мой form.py:
class ltaForm(ModelForm):
def __init__(self, *args, **kwargs):
super(ltaForm,self).__init__(*args, **kwargs)
self.fields['idagent'] = ModelChoiceField(queryset = Agent.objects.all()[:7], empty_label="<a>Plus</a>")
self.fields['idagent'].widget.attrs.update({'class': "form-control m-1 d-inline-block"})
class Meta:
model = Lta
fields = '__all__'
Мой шаблон:
<form>
...
<div class="row m-1">
<div class="col-5">
<label for="{{ ltaform.idagent.id_for_label }}">Emmetteur</label>
{{ ltaform.idagent}}
<button type="button" class="btn btn rounded rounded-circle float-start bg-light" data-bs-toggle="modal"
data-bs-target="#agentModal" id="agentVolModalButton">
<i class="fa-solid fa-plus text-secondary"></i>
</button>
</div>
</div>
...
</form>
Я хотел бы иметь дополнительную опцию, которая вызывает модальное или всплывающее окно, которое я описал, поэтому я подумал, могу ли я установить ссылку в ModelChoice empty_label, чтобы сделать это. Но то, как я делаю это здесь, просто отображается как обычный текст в html. Есть ли способ добиться того, чего я хочу? Заранее спасибо
Попробуйте изменить его на.
{{ ltaform.idagent|safe }}