django добавить к модели из модели есть внешний ключ к этой модели от администратора - PullRequest
0 голосов
/ 09 апреля 2020

models.py

from django.db import models

# Create your models here.

class Client(models.Model):
    name = models.CharField(max_length=100, blank=True, null=True)
    email = models.EmailField(max_length=150, blank=True, null=True)

class ClientNum(models.Model):
    number = models.CharField(max_length=20, blank=True, null=True)
    client = models.ForeignKey(Client, on_delete=models.DO_NOTHING)

class Ad(models.Model):
    num = models.CharField(max_length=20, blank=True, null=True)
    client = models.ForeignKey(Client, on_delete=models.DO_NOTHING)

Я хочу иметь возможность добавить клиента из модели объявления от django администратора, поскольку я могу добавить номер в клиент из модели клиента Я могу добавить пользователя из модели объявления в django admin, но он открывает новое окно, в котором я хочу находиться в том же окне

Acmin.py

from django.contrib import admin

# Register your models here.
from .models import ClientNum, Client, Ad

class ClinetNumAdmin(admin.TabularInline):
    model = ClientNum
    extra = 1

class ClinetNumRel(admin.ModelAdmin):
    inlines = [ClinetNumAdmin]

class ClinetAdmin(admin.TabularInline):
    model = Client
    extra = 1

admin.site.register(ClientNum)
admin.site.register(Client, ClinetNumRel)
admin.site.register(Ad)

1 Ответ

0 голосов
/ 09 апреля 2020

Я не уверен, что полностью понимаю ваш вопрос.

Вы говорите, что хотите добавить новые экземпляры моделей со страницы администратора?

Кроме того, почему у вас есть два разных модели для Client и ClientNum? Разве не было бы проще оставить все, что касается клиента, в одной модели?

То, как вы ссылаетесь на ForeignKey в ClientNum и Ad, в моем опыте является правильным.

...