python model怎么用

python model的用法是:1、model实现增,代码为【book=Book(title=”hello go”)】;2、model实现删,代码为【book=Book.objects.get(id=1),book.delete()】。

python model怎么用

【相关学习推荐:python教程

python model的用法是:

1.首先是数据库配置

一般新建的django项目都是配置为sqlite为数据库

立即学习“Python免费学习笔记(深入)”;

通常项目中都会使用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怎么用的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2248324.html

(0)
上一篇 2025年2月26日 22:53:29
下一篇 2025年2月25日 18:10:17

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • python idle怎么生成程序文件

    python idle生成程序文件的方法:首先点击运行IDLE,并按【Ctrl+N】新建文件;然后默认untitled,并保存好;接着写上正规的Python代码;最后按F5键运行即可。 【相关学习推荐:python教程】 python id…

    2025年2月26日 编程技术
    200
  • python怎么在列表尾部添加元素

    python在列表尾部添加元素的方法:可以利用append()方法来进行添加。append()方法用于在列表尾部添加新的对象,例如:【list1.append(list2)】。 方法介绍: (推荐教程:python教程) append() …

    2025年2月26日
    200
  • Python爬取51cto数据并存入MySQL方法详解

    【相关学习推荐:python教程】 实验环境 1.安装Python 3.7 2.安装requests, bs4,pymysql 模块 立即学习“Python免费学习笔记(深入)”; 实验步骤1.安装环境及模块 可参考https://www.…

    2025年2月26日 编程技术
    200
  • python如何用IP代理

    python用IP代理的方法:首先创建代理ip对象;然后定制一个opener对象;接着urlopen就一直使用这个代理地址;最后发出请求时,就是用到这个代理地址了。 【相关学习推荐:python教程】 python用IP代理的方法: pyt…

    2025年2月26日
    200
  • python如何用于人工智能

    python用于人工智能的方法:1、掌握基础Python程序语言知识;2、了解基础数学及统计学和机器学习基础知识;3、使用Python科学计算函式库和套件;4、使用【scikit-learn】学习Python机器学习应用。 【相关学习推荐:…

    2025年2月26日
    200
  • python 如何运行文件

    python运行文件的方法:首先按下【win+r】键,并输入cmd,打开cmd窗口;然后将【.py】文件拖入cmd窗口或者输入文件路径;最后回车即可运行。 【相关学习推荐:python教程】 python运行文件的方法: 方法一:cmd窗口…

    2025年2月26日 编程技术
    200
  • python中什么是运算符

    python 运算符是:1、算术运算, 用于加减乘除等数学运算;2、赋值运算,用于接收运算符或方法调用返回的结果;3、比较运算, 用于做大小或等值比较运算;4、逻辑运算,用于做 与、或、非运算;5、位运算, 用于二进制运算。 【相关学习推荐…

    2025年2月26日 编程技术
    200
  • python如何对比图像的区别

    python对比图像的区别方法:首先使用【pylab.imread】读取图片;然后使用【matplotlib.pylab – plt.imshow】显示图片;接着灰度图与RGB图相互转换;最后保存图片即可。 【相关学习推荐:py…

    2025年2月26日
    200
  • python为什么编码声明

    python要编码声明的原因:1、python中的第一行,目的就是指出这个文件中的代码用什么可执行程序去运行它;2、如果要在python2的py文件里面写中文,则必须要添加一行声明文件编码的注释,否则python2会默认使用ASCII编码。…

    2025年2月26日
    200
  • python如何将字符串等长分割

    python将字符串等长分割的方法:1、两个一组分割,代码为【b=re.findall(r’.{2}’,aa) 】;2、按照固定长度分割字符串三个字符一组,代码为【re.findall(r’.{3}&#8…

    2025年2月26日
    200

发表回复

登录后才能评论