您的位置是:网站首页>Python编程Python编程

python model怎么用

少儿编程网2020-11-16 14:45:30Python编程 人已围观 来源:少儿编程 -用户投稿

简介pythonmodel的用法是:1、model实现增,代码为【book=Book(title=hellogo)】;2、model实现删,代码为【book=Book.objects.get(id=1),book.delete()】。【相关学习推荐:python教程】python

python model的用法是:1、model实现增,代码为【book=Book(title="hello go")】;2、model实现删,代码为【book=Book.objects.get(id=1),book.delete()】。7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

【相关学习推荐:python教程7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python model的用法是:7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

1.首先是数据库配置7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

一般新建的django项目都是配置为sqlite为数据库7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

通常项目中都会使用MySQL7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

所以首先修改配置7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

在project的settings.py里修改7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

将原来配置sqlite改为自己的属性7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'USER':'root',
        'PASSWORD':'',
        'NAME':'djangouse',
        'HOST':'localhost',
    }
}

USER填MySQL的用户名7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

PASSWORD填MySQL的密码7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

NAME填所使用的数据库的名字,这个要自己到MySQL里创建7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

注意:使用model前记得把MySQL打开7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

2.在新版的django中命令行有了很大的变化7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

关于model的主要有以下几句命令7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py check 检查model是否有拼写错误7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py makemigrations 将model的改变生成一个迁移文件7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py migrate 执行迁移7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

通常在创建好app和数据库之后7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

首先执行7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py migrate

会生成一些管理的表7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

3.之后是新建model7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

首先要导入models包7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

在app的models.py里添加7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

from django.db import models
class Book(models.Model):
    title=models.CharField(max_length=100)
    def __unicode__(self):
        return self.title

这个Book的model有一个title字段**大长度为1007fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

unicode这个方法是返回的是查询到这个Object时显示的内容,默认显示为Object7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

然后就是依次执行7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py check  检查model是否有拼写错误
python manage.py makemigrations 将model的改变生成一个迁移文件
python manage.py migrate 执行迁移

然后查询所使用的数据库会发现多了一个名字含有book的表7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

4.接下来是model的增删查改7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

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

7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

book=Book.objects.get(id=1)
book.delete()

获取id为1的对象后执行delete方法7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

book=Book.objects.all()

查询全部Book对象,返回一个集合7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

book=Book.objects.get(id=1)

获得id为1的Book对象7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

book=Book.objects.filter(title__icontains="hello")

获得title字段里含有hello的Book对象集合7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

book=Book.objects.get(id=1)
book.title="django"
book.save()

5.接下来的model的进阶使用——manager7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

manager是对model一些常用方法的封装7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

有获得数值的,也有获得对象集合的7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

看看获得数值的manager怎么创建7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

在app里的model.py里新建一个继承自models.Manager的类7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

class BookManager(models.Manager):
    def get_book_count(self,keyword):
        return self.filter(title__icontains=keyword).count()

然后把manager添加进model7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

class Book(models.Model):
    title=models.CharField(max_length=100)
    myobjects=BookManager()

使用的时候是7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

count=Book.myobjects.get_book_count("hello")

这样就返回了名字含有book对象的数量7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

如果想获得一个有特殊条件对象集合呢?7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

新建一个manger7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

class PythonManager(models.Manager):
    def get_query_set(self):
        return super(PythonManager,self).get_query_set().filter(title__icontaions='hello')

把manager添加进model7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

class Book(models.Model):
    title=models.CharField(max_length=100)
    myobjects=BookManager()
    pyhton_objects=PythonManager()

用的时候是7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

queryset=Book.pyhton_objects.get_query_set()

这样就返回了名字含有hello的Book对象集合7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

6.接下来是用后台页面管理model7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

首先要在终端输入 7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

python manage.py createsuperuser

以上就是python model怎么用的详细内容,更多请关注少儿编程网其它相关文章!7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

来源:php中文网7fE少儿编程网-Scratch_Python_教程_免费儿童编程学习平台


相关文章:

支持一下 ( )

python model怎么用

      匿名评论
    • 评论
    人参与,条评论
    python model怎么用

微信公众号

免费视频教程

先知道