В моем приложении на странице 1 я создаю объект Project, а затем на странице 2 я создаю пакетный объект. «Пакетный» объект имеет отношение «многие к одному» с «Проектом». Поэтому при вызове пакетной формы необходимо отображать объект Project.
Я могу показать объект Project в пакетной форме, но он отображается в виде раскрывающегося списка. Я хотел бы, чтобы это отображалось как значение поля, но оно не работает. Не могли бы вы помочь. Спасибо.
models.py
Class Project
name = models.CharField()
Class Batch
name = models.CharField()
project = models.ForeignKey('Project', on_delete=models.CASCADE)
template.py
<a href="{% url 'create_batch_url' pk=project.id %}" role="button" >Link to Batch</a>
передача внешнего ключа из представления urls.py
path('batch/new/<int:pk>', batch_views.review_batch, name='create_batch_url'),
.py
simple view which calls the model form
forms.py
class BatchForm(ModelForm):
class Meta:
model = Batch
fields = ('name', 'project',)
def __init__(self, *args, **kwargs):
self.request = kwargs.pop("request")
project_id = kwargs.pop("project_id")
#Only show the project where the request came from
self.fields['project'].queryset = Project.objects.filter(id=project_id)