Django项目13

准备工作

service mysqld start
create database web11 default charset utf8;
django-admin.py startproject web13
django-admin.py startapp blog
templates创建
setting
DATABASES = { 
    'default': {
        'ENGINE': 'django.db.backends.mysql', 
        'NAME': 'web13',                 
        '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',    
)
models

from django.db import models

class User(models.Model):
    name = models.CharField(max_length=20)
    password = models.CharField(max_length=200)
    sex = models.CharField(max_length=10)
    birthday = models.DateField()
    def __unicode__(self):
        return name
urls

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)),
    url(r'^regist/$','blog.views.regist'),
    url(r'^login/$','blog.views.login'),
    url(r'^index/$','blog.views.index'),
)

views

#coding:utf8
import hashlib
from django.shortcuts import render_to_response
from blog.models import User
from django.http import HttpResponseRedirect


def regist(req):

    if 'uname' in req.GET:

        uname = req.GET.get('uname')
        usex = req.GET.get('usex')
        ubirthday = req.GET.get('ubirthday')

        upassword = req.GET.get('upassword')#GET到的都是<input标签>里的name属性值
        md=hashlib.md5
        v=md(upassword)
        vpassword = v.hexdigest()

        User.objects.create(name=uname,password=vpassword,sex=usex,birthday=ubirthday)#写入数据
        return HttpResponseRedirect('/login/')

    return render_to_response('regist.html',{})

def login(req):
    if 'uname' in req.GET:
        uname = req.GET.get('uname')

        upassword = req.GET.get('upassword')
        md=hashlib.md5
        v=md(upassword)
        vpassword = v.hexdigest()

        user=User.objects.get(name=uname)
        if user.password == vpassword:
            return HttpResponseRedirect('/index/')
    return render_to_response('login.html',{})

def index(req):
    users=User.objects.get(id=1).name
    return render_to_response('index.html',{'u':users})

base

<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{width: 80%;border:1px solid black;margin: 1px auto;}
		#nav{height: 20px;border:1px solid blue;background-color: yellow;}

		#left{width: 30%;float: left;border:1px solid blue;}
		#right{width: 65%;float: right;border:1px solid green;}

		#nav a:hover {color:#ff3300;background-color: green;}
		a:hover{color: purple;}
		a:visited{color:green; }

	</style>
</head>
<body>
<div id="main">
	<div id="nav">
		{%block nav%}{%endblock%}	
	</div>

	<div id="left">
		{%block left%}{%endblock%}	
	</div>
	<div id="right">
		{%block right%}{%endblock%}	
	</div>
</div>
</body>
</html>

regist.html

<body>
<form>
	name:<input type="text" name="uname" /><br />	
	passwd:<input type="password" name="upassword" /><br />
	
	sex: 
	male:<input type="radio" name="usex" value="male" checked="checked">
	female:<input type="radio" name="usex" value="female" ><br />
	
	birthday:<input type="text" name='ubirthday'><br />

	<input type="submit" value="提交">
</form>
</body>

login.html

<body>
<form>
	name:<input type="text" name="uname" /><br />
	passwd:<input type="password" name="upassword" /><br />
	<input type="submit" value="登录"></input>
</form>
</body>

index.html

{%extends 'base.html'%}

{% block nav %}
<span><a href='/login/'>退出</a></span>
<span><a href='/regist/'>注册</a></span>
<span>{{u}}</span>

{% endblock %}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值