Django数据库使用第一篇

备注:需要先安装了python,mysql,Django,同时需要将python和Django的安装路径直接添加到环境变量PATH后面,比如:D:\python;D:\python\Lib\site-packages\django\bin,同时需要安装MySQL-python-1.2.4b4.win32-py2.7驱动。我这里安装的python2.7这个可以根据自己的需要安装对应自己版本的python和MYSQL驱动

//在当前目录建立mysite工程,工程名可以自己定义

1. django-admin.py startproject mysite

2.cd mysite

//建立APP

3. python manage.py startapp blog

4. 修改mysite目录下面的setting.py,配置需要连接的数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',#连接的是mysql数据库,这个根据自己需要自己设定
        'NAME':'blog',#需要连接的数据库名
	'USER': 'root',#以root身份进行连接
        'PASSWORD': '666666',#登入密码
        'HOST': '127.0.0.1',                           # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '3306',     #数据库的监听端口                 # Set to empty string for default.
    }
}
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
<span style="white-space:pre">	</span>'blog',#添加自己的APP
)

5.修改blog的models.py,编写需要创建的数据库,下面表示需要创建

from django.db import models
#Create your models here.

class Publisher(models.Model):
    name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=60)
    state_province = models.CharField(max_length=30)
    country = models.CharField(max_length=50)
    website = models.URLField()

    def __unicode__(self):
        return self.name

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField()

    def __unicode__(self):
        return u'%s %s' % (self.first_name, self.last_name)

class Person(models.Model):
    name = models.CharField(max_length=30,primary_key=True)
    age = models.IntegerField()
    weight = models.FloatField()
    email = models.EmailField()

   # def __unicode__(self):
   #     return u'%s %s' % (self.first_name, self.last_name)



class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField()

    def __unicode__(self):
        return self.titl


6.定义好数据模型后运行下面命令表示是否有语法错误

python manage.py validate

出现0 errors found说明没有错误

7.生成CREATE TABLE语句

python manage.py sqlall blog

备注:此时并没有在MYSQL里面建立对应的表格,需要进行同步

8.同步到数据库里面

python manage.py syncdb

此时登入数据库,使用

use blog

show tables

命令可以看到自己建立的表格

使用desc  blog_peson可以查看该表的属性,所有的class最后建立到数据库里面都会带上app的前缀,每一个class对应一个表格


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。