您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

python model怎么用

2025/6/18 4:00:35发布8次查看
python model的用法是:1、model实现增,代码为【book=book(title=hello go)】;2、model实现删,代码为【book=book.objects.get(id=1),book.delete()】。
【相关学习推荐:python教程】
python model的用法是:
1.首先是数据库配置
一般新建的django项目都是配置为sqlite为数据库
通常项目中都会使用mysql
所以首先修改配置
在project的settings.py里修改
将原来配置sqlite改为自己的属性
databases = { 'default': { 'engine': 'django.db.backends.mysql', 'user':'root', 'password':'', 'name':'djangouse', 'host':'localhost', }}
user填mysql的用户名
password填mysql的密码
name填所使用的数据库的名字,这个要自己到mysql里创建
注意:使用model前记得把mysql打开
2.在新版的django中命令行有了很大的变化
关于model的主要有以下几句命令
python manage.py check 检查model是否有拼写错误
python manage.py makemigrations 将model的改变生成一个迁移文件
python manage.py migrate 执行迁移
通常在创建好app和数据库之后
首先执行
python manage.py migrate
会生成一些管理的表
3.之后是新建model
首先要导入models包
在app的models.py里添加
from django.db import models
class book(models.model): title=models.charfield(max_length=100) def __unicode__(self): return self.title
这个book的model有一个title字段最大长度为100
unicode这个方法是返回的是查询到这个object时显示的内容,默认显示为object
然后就是依次执行
python manage.py check 检查model是否有拼写错误python manage.py makemigrations 将model的改变生成一个迁移文件python manage.py migrate 执行迁移
然后查询所使用的数据库会发现多了一个名字含有book的表
4.接下来是model的增删查改

book=book(title="hello django")book.save()

book=book.objects.get(id=1)book.delete()
获取id为1的对象后执行delete方法

book=book.objects.all()
查询全部book对象,返回一个集合
book=book.objects.get(id=1)
获得id为1的book对象
book=book.objects.filter(title__icontains="hello")
获得title字段里含有hello的book对象集合

book=book.objects.get(id=1)book.title="django"book.save()
5.接下来的model的进阶使用——manager
manager是对model一些常用方法的封装
有获得数值的,也有获得对象集合的
看看获得数值的manager怎么创建
在app里的model.py里新建一个继承自models.manager的类
class bookmanager(models.manager): def get_book_count(self,keyword): return self.filter(title__icontains=keyword).count()
然后把manager添加进model
class book(models.model): title=models.charfield(max_length=100) myobjects=bookmanager()
使用的时候是
count=book.myobjects.get_book_count("hello")
这样就返回了名字含有book对象的数量
如果想获得一个有特殊条件对象集合呢?
新建一个manger
class pythonmanager(models.manager): def get_query_set(self): return super(pythonmanager,self).get_query_set().filter(title__icontaions='hello')
把manager添加进model
class book(models.model): title=models.charfield(max_length=100) myobjects=bookmanager() pyhton_objects=pythonmanager()
用的时候是
queryset=book.pyhton_objects.get_query_set()
这样就返回了名字含有hello的book对象集合
6.接下来是用后台页面管理model
首先要在终端输入
python manage.py createsuperuser
以上就是python model怎么用的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product