Главная | Архив новостей | Общение | Площадка | Примеры OpenID
Хостинг Django от «Джино»
Оглавление

Добавление ваших моделей на интерфейс администратора

Есть одна важная часть, которую мы ещё не сделали. Давайте добавим наши модели в интерфейс администратора, что бы мы могли добавлять, редактировать и удалять объекты в наших таблицах с помощью этого изящного интерфейсе. Продолжим наш пример с книгами из главы «Модели», в которой мы создали три модели: Publisher, Author и Book.

В каталоге books (mysite/books) создайте файл admin.py и добавьте в него следущие строки:

from django.contrib import admin
from mysite.books.models import Publisher, Author, Book

admin.site.register(Publisher)
admin.site.register(Author)
admin.site.register(Book)

Этот код указывает Django предоставлять интерфейс для каждой из перечисленных моделей.

После этого перейдите на домашнюю страницу административной части (http://127.0.0.1:8000/admin/), вы должны увидеть раздел «Books» с ссылками на Authors, Books и Publishers. (Возможно потребуется остановить и запустить тестовый сервер, чтобы сделанные изменения вступили в силу.)

Теперь у вас есть полнофункциональный интерфейс администратора для этих моделей. Это было не так сложно!

Добавьте и отредактируйте записи для наполнения вашей базы данных данными. Если вы следовали примерам создания объектов Publisher, которые были даны в главе «Модели» (и не удалили их), вы увидите их записи на странице списка объектов модели.

Следует упомянуть то, что интерфейс администратора обрабатывает внешние ключи и связь многие-ко-многим, которые присутствуют в модели Book. Вспомним как выглядит модель Book:

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField()

    def __unicode__(self):
        return self.title

На странице «Добавить книгу» (http://127.0.0.1:8000/admin/books/book/add/), издатель (ForeignKey) представлен выпадающим списком, а автор(ManyToManyField) представлен выпадающим списком с множественным выбором. Рядом с этими полями находится иконка зелёного цвета с изображением плюса, которая позволяет добавлять связаные обьекты соответствующего типа. Например, если нажать на иконку возле поля «Издатель», появится дополнительное окно, позволяющее добавить издателя. После того, как вы успешно добавите издателя в этом окне, в форме добавления книги добавится созданый издатель. Красиво.


Увидели ошибку?
Выделите её мышкой и нажмите
Ctrl-Enter
Обработано:
1049 49 130 71

Версия книги
1.0 2.0
Версия 2.0 в процессе перевода!

Мой луч
Многообразие света

Полезное
Актуальные вакансии, Python работа для python-разработчиков.


Скачать в формате
CHM от 2 сентября

Заказать PDF файл можно через почту, чат, джаббер. Всего 2WMZ. Содержимое точно соответствует содержимому сайта.
Чем чаще заказываете — тем больше перевожу.

Русская группа

на поддержку перевода
Яндекс Яндекс.Деньги Хочу такую же кнопку
Ускорить процесс перевода!
R130494980980
Z425285133788
E112528079659
U327380922061

Книга помогла реализовать:
Проект «Мой луч»
АРМ УФМС.


Мой вебсайт стоит666 337,31 руб

© 2008-2009 Ruslan Popov @ gmail.com Powered by Django 1.1 beta 1 SVN-11114
Главная | Архив новостей | Общение | Площадка | Примеры OpenID