Django框架 - 05 模型使用例子

模型使用例子

1.数据库准备

在model中定义数据库,其中的性别,男的存1,女的存0。
“`python
class Student(models.Model):
stuname = models.CharField(max_length=20)
studex = models.BooleanField()
stubirth = models.DateField()
stutel = models.CharField(max_length=255)

class Meta:
    db_table = 'student'
```

2.数据库迁移

python manage.py makemigrations
python manage.py migrate

3. 数据插入

(1)使用表单form提交post请求数据
<form action="/app/addStu/" method="post">
    stuname: <input type="text" name="name">
    stusex: <input type="text" name="sex">
    stubirth: <input type="date" name="birth">
    stutel: <input type="text" name="tel">
    <input type="submit" value="提交">
</form>
(2)获取post请求,获取请求数据,并且创建数据
方法1:
stu = Student()
stu.stuname = stuname
stu.stusex = sex
stu.stubirth = birth
stu.stutel = tel
stu.save()

方法2:
Student.objects.create(stuname=stuname, stusex=sex, stubirth=birth, stutel=tel)

4. 查询所有的学生信息

使用all()方法获取所有的数据

Student.objects.all()

5. 查询所有女学生的姓名和出生日期

Student.objects.filter(stusex=0)
或者
Student.objects.exclude(stusex=1)

其中:
filter():返回符合条件的数据
exclude():过滤掉符合条件的数据

6.查询所有的学生,按照id从大到小排序

Student.objects.all().order_by('-id')

其中:
order_by('id'):表示按照id升序的排列
order_by('-id'):表示按照id降序的排列

7. 查询单个数据

get():返回一个满足条件的对象。如果没有返回符合条件的对象,会应该模型类DoesNotExist异常,如果找到多个,会引发模型类MultiObjectsReturned异常

first():返回查询集中的第一个对象

last():返回查询集中的最后一个对象

count():返回当前查询集中的对象个数

exists():判断查询集中是否有数据,如果有数据返回True,没有返回False

8.查询所有80后学生的姓名、性别和出生日期(筛选)

Student.objects.filter(stubirth__gte='1980-01-01', stubirth__lte='1990-01-01')

9.查询名字中有王字的学生姓名(模糊)

Student.objects.filter(stuname__contains='王')

10.查询姓王的学生姓名和性别(模糊)

Student.objects.filter(stuname__startswith='王')

猜你喜欢

转载自blog.csdn.net/hanbo6/article/details/82503204
今日推荐