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',)

enter image description here

Я хотел бы, чтобы в 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)
Вернуться на верх