您的位置:首页 > 数据库

47_Django数据库_创建和映射ORM模型

2019-02-14 22:13 477 查看
  1. 在PyCharm中创建一个Project,名为“project477”。
  2. 在Navicat里面新建一个数据库,名为“db477”,字符集设置为“utf8 – UTF-8 Unicode”。
  3. 配置数据库的连接
    打开“settings.py”文件,DATABASES信息修改如下:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'db477',
'USER':'root',
'PASSWORD':'root',
'HOST':'127.0.0.1',
'PORT':'3306',
}
}
  1. 新建一个app,名为“book”。
  2. 定义模型,
    更新models.py中的代码。
    将父类设置为models.Model或者其他的子类,才能将类变成一个可以映射到数据库中的ORM模型。
    更新代码如下:
class Book(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=100,null=False)
author = models.CharField(max_length=100,null=False)
price = models.FloatField(null=False,default=0)
  1. 将app添加到setting.py文件中:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'book',
]
  1. 把模型映射到数据库当中
    在虚拟环境下,进入项目所在的路径,使用makemigration生成迁移脚本文件,运行如下命令:
python manage.py makemigrations

使用migrate将生成的迁移脚本文件映射到数据库中,运行如下命令:

python manage.py migrate

提示:
模型中id可以省略,系统将自动创建id,例如:

class Publisher(models.Model):
name = models.CharField(max_length=100,null=False)
address = models.CharField(max_length=100,null=False)

系统将自动创建id。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: