python测试开发django(10)--models设置主键primary_key
前言
django的models新增数据库表时,如果不设置主键,会默认新增一个id为主键,如果我们想自己设置一个字段为主键,需加个参数primary_key=True
默认id主键
新增一张用户表,表名为account,字段user_name,pwd,mail都是字符串类型,设计如下;
#models.py from django.db import models # Create your models here. class User(models.Model): name=models.CharField(max_length=30) age=models.IntegerField() class Account(models.Model): user_name=models.CharField(max_length=20) pwd=models.CharField(max_length=20) mail=models.CharField(max_length=30)
cmd 执行makemigrations和migrate
python manage.py makemigrations python manage.py migrate
然后就可以看到xjyn_account表新建成功了,默认多一个字段id为主键;
设置主键primary_key
新增一张用户表,表名为Users,字段user_name(主键),psw,mail都是字符串类型,我们设置user_name为主键,让用户名不重复,设计如下
#models.py from django.db import models # Create your models here. class User(models.Model): name=models.CharField(max_length=30) age=models.IntegerField() class Users(models.Model): user_name=models.CharField(max_length=20, primary_key=True) pwd=models.CharField(max_length=20) mail=models.CharField(max_length=30)
cmd 执行makemigrations和migrate
python manage.py makemigrations python manage.py migrate
然后就可以看到xjyn_users表新增成功了,主键user_name就会代替默认的id主键了