在页面上显示内容可以简单的用django.http.HttpResponse来显示我们需要的内容,但是当我们需要一些处理一些复杂的数据或者从数据库读出来的操作要显示在html标签内或者js代码中就需要用渲染模板的方法。
首先,使用一下代码创建一个名为DjangoModels的工程(读者可以根据需要设置自己的工程名):
django-admin startproject DjangoModels
创建工程之后,cd到工程目录,创建一个名为myapp的应用
python manage.py startapp myapp
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp',
)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djagnomodels', #你的数据库名称
'USER': 'root', #你的数据库用户名
'PASSWORD': '', #你的数据库密码
'HOST': '', #你的数据库主机,留空默认为localhost
'PORT': '3306', #你的数据库端口
}
}
注:
myapp/models.py
from django.db import models
class Person(models.Model):
name = models.CharField(max_length=30)
age = models.IntegerField()
def __unicode__(self):
# 在Python3中使用 def __str__(self)
return self.name
这里建议读者安装一个名为Navicat for MySql的软件,这是一个图形化管理MySql数据库的工具,可以让我们更简单的使用数据库。
myapp/views.py
from django.shortcuts import render
from myapp.models import Person
# Create your views here.
def index(request):
str = Person.objects.get(name='name1').age
return render(request, 'index.html', {'str': str})
djangomodels/urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
from myapp import views
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'DjangoModels.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^index/', views.index)
)
使页面上能显示从数据库中查询出来的值 index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>``
<body>
姓名为name1的年龄为:{{ str }}
</body>
</html>
注: