models
-
使用ORM技術
- object relational mapping 對象關係映射
-
常規數據庫操作,直接insert 等等
-
orm是 業務邏輯 解耦合
- 把sql語句封裝成 通用方法
-
關係型數據庫
- DDL database define language 定義數據庫
- 通過 models 定義來實現 數據庫表的定義
-
在 models.py 文件下
class Student(models.Model):
s_name = models.CharField(max_length=16)
s_age = models.IntegerField(default=0)
然後生成遷移文件 命令行:
python manage.py makemigrations
執行遷移命令
python manage.py migrate
增 改
s = Student()
s.s_name = xx
s.save()
查
s = Student.objects.all() 獲取全部
s = Student.objects.get(pk=xx)
刪
s.delete()
連接mysql
- date source and driver 配置
- 解決 URL 這樣寫:
- jdbc:mysql://localhost:3306/庫名?useSSL=false&serverTimezone=UTC
- 遷移失敗
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'.
Did you install mysqlclient or MySQL-python?
- 安裝 pymysql
- pip install pymysql
- 僞裝成 mysqlclient
- 在 項目 init 內
- import pymysql
- pymysql.install_as_MySQLdb()
- 然後再遷移就ok了