Gjongo gjango поле списка администраторов
models.py:
from djongo import models
class Passenger(models.Model):
_id = models.ObjectIdField()
first_name = models.CharField(max_length=100, blank=False, null=False)
last_name = models.CharField(max_length=100, blank=False, null=False)
class Bus(models.Model):
_id = models.ObjectIdField()
bus_driver = models.CharField(max_length=100, blank=False, null=False, unique=True)
passengers = models.ArrayField(model_container=Passenger)
admin.py:
from django.contrib import admin
# Register your models here.
from .models import Bus
@admin.register(Bus)
class BusAdmin(admin.ModelAdmin):
list_display = ('bus_driver',)
Я хотел бы, чтобы в Django Admin была возможность добавлять пассажиров в автобус. Автобус может быть и без пассажиров. Как я могу это сделать?
В настоящее время в коде что-то не так, что не позволяет это сделать: нулевые пассажиры, т.е. нулевой список не допускается. Плюс кнопка добавления нового пассажира не существует, т.е. я не могу добавить несколько пассажиров.
Вы можете достичь желаемых результатов, создав модель пользователя, а затем создав отношения внешнего ключа между моделью пользователя и моделью шины
from django.db import models # and you should call django.db not djongo use an IDE for the best experience
class Passenger(models.Model):
_id = models.ObjectIdField()
first_name = models.CharField(max_length=100, blank=False, null=False)
last_name = models.CharField(max_length=100, blank=False, null=False)
#other user info that is needed recommend a custom user model
class Bus(models.Model):
_id = models.ObjectIdField()
bus_driver = models.CharField(max_length=100, blank=False, null=False, unique=True)
passengers = models.ForeignKey(Passenger, related_name='reviewing', on_delete=models.CASCADE, blank=True, null=True, required=False)