Как отобразить поле из выбора модели

У меня есть класс в моих формах и объект под названием tiposervico (ForeignKey). Смотрите ниже. В моем шаблоне после выбора типосервико я хотел бы отобразить поле «descricao» на моем экране. Как я могу это сделать?

class servicoForm(forms.ModelForm):
    tiposervico = forms.ModelChoiceField(queryset=tiposervico.objects.all(), required=True)

tiposervico -> id, descricao


person Patricia    schedule 25.05.2018    source источник
comment
Не могли бы вы объяснить еще немного?   -  person SHIVAM JINDAL    schedule 25.05.2018
comment
Думаю, вы ищете label_from_instance. См. этот вопрос.   -  person Alasdair    schedule 25.05.2018


Ответы (1)


Вы можете переопределить label_from_instance из field внутри метода get_form() в CBV и получить доступ к полю с помощью lambda

def get_form(self, form_class=None):
    form = super(ModelView, self).get_form()
    form.fields['field_name'].label_from_instance = lamda x : x.model_field_name_to_display
    return form

Для FBV это можно сделать после инициализации формы;

form = FormName()
form.fields['field_name'].label_from_instance = lamda x : x.model_field_name_to_display
person Lemayzeur    schedule 25.05.2018