Preparations [plain] service mysqld start create database web11 default charset utf8; django-admin.py startproject web12 django-admin.py startapp news templates create admin. create settings [python] DATABASES = {'default': {'Engine ': 'django. db. backends. mysql ', 'name': 'web12', 'user': 'root', 'Password': '', 'host':'', 'Port ': '', }} INSTALLED_APPS = ('django. contrib. auth ', 'django. contrib. contenttypes ', 'dja Ngo. contrib. sessions ', 'django. contrib. sites ', 'django. contrib. messages ', 'django. contrib. staticfiles ', 'News', 'django. contrib. admin ',) models [python] from django. db import models class Author (models. model): name = models. charField (max_length = 20) def _ unicode _ (self): return self. name class Book (models. model): name = models. charField (max_length = 20) authors = models. manyToManyField (Author) def _ _ Unicode _ (self): return self. name views [python] # coding: utf8 from blog. models import Author, Book from django. shortcuts import render_to_response books = Book. objects. all () authors = Author. objects. all () def show (req): return render_to_response('show.html ', {'books': books, 'authors ': authors}) def book (req, book_id): book = Book. objects. get (id = book_id) return render_to_response('show.html ', {'books': bo Oks, 'book': book, 'authors ': authors}) def author (req, author_id): author = Author. objects. get (id = author_id) return render_to_response('show.html ', {'authors': authors, 'author': author, 'books ': books}) urls [python] from django. conf. urls. defaults import patterns, include, url from django. contrib import admin. autodiscover () urlpatterns = patterns ('', url (R' ^ author/(\ d {1, 5})/$ ', 'blog. views. author '), ur L (R' ^ book/(\ d {1, 5})/$ ', 'blog. views. book '), url (R' ^ show/$', 'blog. views. show '), url (R' ^ admin/', include (admin. site. urls),) base [html] "UTF-8"?> <! DOCTYPE html PUBLIC "-// W3C // dtd xhtml 1.0 Strict // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">