Django项目9


从项目07进一步演化。
准备工作
[plain]  
service mysqld start  
create database web07 default character set utf8;  
django-admin.py startproject web09  
django-admin.py startapp blog  
templates创建  
admin.py创建  
 
配置(admin,settings,templates)(models,views,urls)
[plain]  
M:models,templates  
V:views  
C:urls  
settings
[python] 
DATABASES = {   
    'default': {  
        'ENGINE': 'django.db.backends.mysql',   
        'NAME': 'web09',                   
        'USER': 'root',                       
        'PASSWORD': '',                    
        'HOST': '',                       
        'PORT': '',                      
    }     
}  
  
INSTALLED_APPS = (  
    'django.contrib.auth',  
    'django.contrib.contenttypes',  
    'django.contrib.sessions',  
    'django.contrib.sites',  
    'django.contrib.messages',  
    'django.contrib.staticfiles',  
    'blog',  
    'django.contrib.admin',              #重点是这个,admin 1号  
)  
 
models,一个class对应一张表
[python]  
#coding:utf8  
from django.db import models  
class Zheng(models.Model):  
    title = models.CharField(max_length=30)  
    content = models.TextField()  
    def __unicode__(self):  
        return self.title  
 
把数据库注册入admin.py
[python]  
#coding:utf8                                          admin 2号   
from django.contrib import admin           
from blog.models import Zheng   
admin.site.register(Zheng)  
数据库的写入,服务器的运行
[python]  
python manage.py syncdb  
python manage.py runserver  
 
配置views
[python]  
#coding:utf8  
from django.shortcuts import render_to_response  
from blog.models import Zheng  
def index(req,template_name):  
    news = Zheng.objects.all()  
    return render_to_response(template_name,{'news':news})  
def show(req,id):  
    news = Zheng.objects.all()  
    new = Zheng.objects.get(id=id)  
    return render_to_response('zhengzhi.html',{'new':new,'news':news})  
 
配置urls
[python]  
from django.conf.urls.defaults import patterns, include, url  
from django.contrib import admin                    #admin 3号  
admin.autodiscover()                                #admin 4号  
urlpatterns = patterns('',  
    url(r'^show/shouye/$','blog.views.index',{'template_name':'index.html'}),  
    url(r'^show/zhengzhi/$','blog.views.index',{'template_name':'zhengzhi.html'}),  
    url(r'^show/jingji/$','blog.views.index',{'template_name':'jingji.html'}),  
    url(r'^show/zhengzhi/(\d{1,5})/$','blog.views.show'),  
    url(r'^admin/', include(admin.site.urls)),      #admin 5号  
)  
 
配置templates之base模板
[html]  
<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">  
<head>  
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />  
    <title></title>  
<style>  
    #main{  
        border:1px solid black;  
        margin: 20px auto;  
        background-color: red;  
        width: 80%;  
    }  
    #footer{  
        clear: both;  
        border:1px solid black;  
        text-align: center;   
    }  
    #left{  
        width:20%;  
        float: left;  
        padding: 20px;  
    }  
    #right{  
        width:50%;  
        float: right;  
    }  
</style>  
</head>  
<body>  
<div id="main">  
    <div id="nav">  
    {% block nav %}  
        <a href='/show/shouye/'>首页</a>  
        <a href='/show/zhengzhi/'>政治</a>  
        <a href='/show/jingji/'>经济</a>  
    {% endblock %}  
    </div>  
    <div id="left">{% block left %}{% endblock %}</div>  
    <div id="right">{% block right %}{% endblock %}</div>  
    <div id="footer">{%block footer%}footer{%endblock%}</div>  
</div>  
</body>  
</html>  
 
配置tmplates之Zheng模板
[html]  
{% extends 'base.html' %}  
  
{% block left %}  
{% for n in news %}  
<li>  
<a href="/show/zhengzhi/{{n.id}}" >{{n.title}}</a>  
</li>  
{%endfor%}  
{% endblock %}  
  
{% block right %}  
{{new.content|default:news.0.content}}  
{% endblock %}  
 
这时候,就可以进入后台了,进行图形数据操作。
如果急着在中期就进入后台的话,请先把5个admin配置好
目前位置,页面也都可以访问了,另外两个页面略
 

相关内容

    暂无相关文章

评论关闭