Python學習筆記-資料庫的使用(二)

來源:互聯網
上載者:User

標籤: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學習筆記-資料庫的使用(二)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.