2010-10-14 10 views
4

Я хочу добавить пользовательскую кнопку рядом с 'Добавить имя_модели'. Когда я нажимаю на вновь созданную кнопку, я хотел бы показать пользовательскую форму, где я могу выбрать модель из окна выбора. Когда я нажимаю на сохранение, я хочу сохранить эту модель и добавить некоторые параметры, чтобы она была «добавлена», но без повторного выбора всех параметров. Я даю ясный пример:django admin Добавить пользовательскую кнопку + пользовательскую форму

У меня есть название модели 'Book'. В первый раз, когда я создаю новую книгу, у меня есть форма «добавить книгу», и я должен полностью заполнить форму. Итак, у меня есть книга с первичным ключом = Book_1_1. Но теперь я хочу добавить вторую книгу, это та же книга, что и первая 1, но версия изменилась, поэтому я хочу новую книгу, но я не хочу больше выбирать все элементы в стандартной форме «добавить книгу», я хочу, чтобы что-то вроде того, как я нажимаю на создание нового экземпляра -> я могу выбрать одну книгу из окна выбора со всеми объектами книги в ней, и когда я «сохраню» этот новый экземпляр книга генерируется. Этот экземпляр имеет следующий первичный ключ: Book_1_2, например. Я знаю, как сохранить это, но я не знаю, как изменить сайт администратора, чтобы сделать это. Мне нужно 2 вещи:

1) добавить кнопку 'новый экземпляр' рядом с 'Add_model_name' 2) Принести форму со всеми объектами model_name в поле выбора и когда я нажму «Сохранить», я хочу получить объект, с которым i может изменить некоторые вещи, чтобы сохранить его как «новую книгу».

Любые идеи?

UPDATE Я уже добавил кнопку «новую», но, как я могу видеть в этот момент вместо URL = добавить, что я должен создать новый URL внутри администратора, как add_instance и т.д. Есть ли кто-то есть какие-либо документации на этом?

С уважением, Hein

ответ

1

делая его слишком сильно на себя. Просто сделайте это:

class MyModelAdmin(admin.ModelAdmin): 
    # Other stuff here 
    save_as = True 

Теперь вы можете открыть свою запись книги, изменить все, что отличается и нажмите «Сохранить как новые», и он будет создавать новую книгу с этой информацией, а не перезаписывать другие.

Смежные вопросы