Я хочу выбрать несколько данных во всплывающем окне django raw_id и добавить их в строку
Приятно познакомиться со всеми.
Я создаю систему бронирования талантов на django admin. models.py выглядит следующим образом. Я новичок в django. Извините, если вопрос уже был решен.
[master models.py]
class Talent(models.Model):
def __str__(self):
return self.name
class Meta:
verbose_name = _('Talent')
verbose_name_plural = _('1-3. Talent')
ordering = ['id']
name = models.CharField(_('Talent Name'), max_length=128, blank=False, null=False)
class Contract(models.Model):
def __str__(self):
return str(self.contract_start_d) + '-' + str(self.contract_end_d)
class Meta:
verbose_name = _('Contract')
verbose_name_plural = _('2-0. Contract')
ordering = ['id']
model = models.ForeignKey(Talent, on_delete=models.CASCADE, verbose_name='Talent', blank=False, null=False)
[event models.py]
class Ticket(models.Model):
def __str__(self):
return str(self.id)
class Meta:
verbose_name = _('Ticket')
verbose_name_plural = _('3-0. Ticket')
ordering = ['id']
name = models.CharField(_('name'), max_length=128, blank=True, null=True)
class TicketContract(models.Model):
def __str__(self):
return self.contract.model.name
class Meta:
verbose_name = _('TicketContract')
verbose_name_plural = _('3-5.TicketContract')
ordering = ['id']
ticket = models.ForeignKey(Ticket, on_delete=models.CASCADE, verbose_name='Ticket')
contract = models.ForeignKey(Contract, on_delete=models.CASCADE, verbose_name='Contract', null=False)
[admin.py]
class TicketContractInline(admin.TabularInline):
model = TicketContract
fieldsets = (
(_('Talent'), {'fields': (
'contract',
)}),
)
search_fields = ('contract',)
raw_id_fields = ('contract',)
ordering = ('id',)
extra = 1
class TicketAdmin(admin.ModelAdmin):
fieldsets = (
(_('Ticket'), {'fields': (
'name'
)}),
)
list_display = (
'id',
)
inlines = (TicketContractInline,)
Я установил models.py и admin.py таким образом, но я знаю хороший способ выбрать несколько данных [Contract] на всплывающем экране и добавить несколько данных в строку [Ticket Contract] одновременно. Есть ли кто-нибудь, кто делает это?