码迷,mamicode.com
首页 > 数据库 > 详细

Python学习笔记-数据库的使用(二)

时间:2018-03-07 00:45:06      阅读:178      评论:0      收藏:0      [点我收藏+]

标签: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学习笔记-数据库的使用(二)

标签:nerd   view   use   esc   tin   post   web服务   temp   ken   

原文地址:https://www.cnblogs.com/Cheng888/p/8519747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!