Как я могу заполнить поле выбора, основываясь на выборе его внешнего ключа в Django? - PullRequest
0 голосов
/ 29 сентября 2018

В основном у меня такая ситуация.

Модели - Работодатель, EmployerContact

EmployerContact является иностранным ключом для Работодателя.

В своей форме я хочу выбрать работодателя,затем динамически заполняйте поле выбора EmployerContact только контактами для выбранного работодателя ТОЛЬКО.

Сейчас он показывает все EmployerContact от всех работодателей.

Я нашел пару решений, но они кажутсяотрывочный ... Может ли кто-нибудь провести меня через это?

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

Несмотря на то, что в итоге я пошел другим путем, превратив форму в многоэтапную форму, в которой есть свои проблемы.

Я обнаружил, что эта статья на самом деле решает исходную проблему: https://simpleisbetterthancomplex.com/tutorial/2018/01/29/how-to-implement-dependent-or-chained-dropdown-list-with-django.html

0 голосов
/ 30 сентября 2018

Вы можете добавить немного больше своего кода для лучшего понимания проблемы.Насколько я понимаю, вы хотите, чтобы на странице сведений работодателя отображался контакт, связанный с ним.

В Html вы можете добавить

{% for contact in employer.employercontact.all %} 
/* here employercontact is the objectname that I have assumed, you can edit accordingly */
       {{ contact.employer_contact }}
{% empty %}
        <p> No contacts </p>
{% endfor %}

В urls.py

path('employer/<int:pk>/', views.DetailView.as_view(), name='detail'),

В views.py

class DetailView(generic.DetailView):
      model = Employer
      template_name = 'add your template name'
...