Я настраиваю веб-приложение, которое позволяет бронировать транспорты из одного пункта назначения в другой. Моя проблема в том, что форма показывает все атрибуты, но она не позволяет мне вставить внешний ключ, и при этом я не могу выбрать правильный внешний ключ из списка.
class Loading_location(models.Model):
address = models.CharField(max_length=40)
postal_code = models.CharField(max_length=10)
place = models.CharField(max_length=30)
class Deloading_location(models.Model):
address = models.CharField(max_length=40)
postal_code = models.CharField(max_length=10)
place = models.CharField(max_length=30)
class Customer(models.Model):
company = models.CharField(max_length=40)
address = models.CharField(max_length=40)
postal_code = models.CharField(max_length=10)
place = models.CharField(max_length=30)
class Truck(models.Model):
mark = models.CharField(max_length=20)
brand = models.CharField(max_length=20)
type = models.CharField(max_length=20)
class Order(models.Model):
order_date = models.DateField()
customer = models.ForeignKey(Customer, on_delete=models.PROTECT, null=True, default=None)
loading_location = models.ForeignKey(Loading_location, on_delete=models.PROTECT, null=True, default=None)
deloading_location = models.ForeignKey(Deloading_location, on_delete=models.PROTECT, null=True, default=None)
truck = models.ForeignKey(Truck, on_delete=models.PROTECT, null=True, default=None)
price = models.FloatField(max_length=7)
forms.py
из форм импорта Django
из .models import Auftrag
класс CreateOrder (forms.ModelForm):
class Meta:
model = Order
fields = [
'order_date',
'customer',
'loading_location',
'deloading_location',
'truck',
'price'
]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
views.py
из django.shortcuts импорт рендеринга
из .models import Заказать
из .forms import CreateOrder
def creation_order_view (запрос):
form = CreateOrder (request.POST или None)
if form.is_valid():
form.save()
context = {
'form': form
}
return render(request, "transporter/order_creation.html", context)
Ожидается, что я смогу выбрать внешние ключи из списка, чтобы выполнить заказ и сохранить его в базе данных.
Заранее спасибо