標籤:nerd view use esc tin post web服務 temp ken
1 在MySQL建立表
1)啟動mysql
#service mysqld start
2)建立項目
#django-admin.py startproject web_04
3)建立應用
#cd web_04
#django-admin.py startapp blog
4)建立新的database
#mysql –u root –p (有密碼)
#mysql –u root (無密碼)
Mysql>create database user default charset = utf8;
5)資料庫配置settings.py
#vim web_04/settings.py
- 在installed_app下添加’blog’,
- 將Databases各項設定:
‘ENGINE‘: ‘django.db.backends.mysql‘, (資料庫類型)
‘NAME‘: ‘user‘, (添加在mysql建立的database)
‘USER‘: ‘root‘,
‘PASSWORD‘: ‘password‘, (密碼)
‘HOST‘: ‘‘, (主機名稱預設為localhost)
‘PORT‘: ‘‘, (連接埠號碼預設為3306)
6)對模型表models.py進行編碼
例:
from django.db import models
class Person(models.Model):
name = models.CharField(max_length=20,default=‘‘)
sex = models.CharField(max_length=10,default=‘male‘)
def __unicode__(self): #將對象屬性顯示出來
return self.name + ‘ ‘ + self.sex
class Dog(models.Model):
Itemid = models.AutoField(primary_key=True)
color = models.CharField(max_length=5)
7)讓django知道要包含的blog應用
#python manage.py makemigrations blog (blog:項目中建立的應用)
8)同步資料庫
#python manage.py migrate
9)查看
Mysql>use user;
Mysql>show tables;
將會找到blog_person和blog_dog
10)查看錶blog_person 與 表blog_dog
Mysql>desc blog_person
Mysql>desc blog_dog
2 利用django在mysql建立資料
1)啟動mysql服務
#service mysqld start
2)進入python的互動模式
#python manage.py shell
3)添加資料
:from blog.models import Person
:per = Person()
:per.name = ‘Sheldon’
:per.save()
:from blog.models import Person
:per = Person(name = ‘Penny’,sex = ‘female’)
:per.save()
- 方法三:利用類對象管理器objects的create方法添加
:from blog.models import Person
:Person.objects.create(name = ‘Lenerd’)
4)擷取所有的對象
:pers = Person.objects.all()
5)在資料庫中查看添加的資料
#mysql –u root –p
Mysql>use user;
Mysql>select * from blog_person;
3 結果顯示在網頁中
1)建立介面,設定urls.py
from blog.views import index
urlpatterns = [
url(r‘^admin/‘, admin.site.urls),
url(r‘^show/$‘,index),
]
2)編碼views.py
from django.shortcuts import render_to_response
from blog.models import Person
def index(req):
pers = Person.objects.all()
return render_to_response(‘index.html‘,{‘pers‘:pers}) #(index.html:載入模板檔案。)
3)建立模板檔案index.html
#cd web_04/blog
#mkdir templates
#vim templates/index.html
<html>
<head>
<title></title>
</head>
<body>
{% for per in pers %}
<div>{{forloop.counter}} {{per}}</div>
{% endfor %}
</body>
</html>
4)啟動django內建的輕量級web伺服器
#python manage.py runserver
瀏覽器輸入127.0.0.1:8000/show
Python學習筆記-資料庫的使用(二)