初识Django的ORM
Django都是通过ORM操作数据库,下面开始ORM的学习。
ORM准备工作
pycharm安装Django并新建项目
为Django配置ORM
1.安装
# 安装Django pip install django==2.2.15
# 准备项目 django-admin startproject salary .
# 创建应用 python manage.py startapp employee
2.配置
打开salary/settings.py主配置文件:
修改数据库配置
修改时区
注册应用
配置log
# 数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'wayne', 'PASSWORD': 'wayne', 'HOST': '127.0.0.1', 'PORT': '3306', } } # 时区 TIME_ZONE = 'Asia/Shanghai' # 注册应用 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'employee', ] # 配置log LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console': { 'class': 'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'level': 'DEBUG', }, }, }
建立ORM模型
class Employee(models.Model): class Meta: db_table = 'employees' # 定义要关联的表 emp_no = models.IntegerField(primary_key=True) birth_date = models.DateField(null=False) first_name = models.CharField(null=False, max_length=14) last_name = models.CharField(null=False, max_length=16) gender = models.SmallIntegerField(null=False) hire_data = models.DateField(null=False) @property # 使用装饰器增加属性name def name(self): return "{}-{}".format(self.first_name, self.last_name) def __repr__(self): # 魔术方法改变输出格式 return "<Employee: {} {} {}>".format(self.emp_no, self.name, self.gender) __str__ = __repr__
下次学习,怎么利用ORM模型查询数据库!