首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django 2.0 新特性 转

    一、Python兼容性 Django 2.0支持Python3.4、3.5和3.6。Django官方强烈推荐每个系列的最新版本。 最重要的是Django 2.0不再支持Python2!...Django 1.11.x是支持Python2.7的最后版本。 二、2.0新特性 1.简化了URL路由语法 django.urls.path()方法的语法更简单了。...django.conf.urls.include()方法现在可以从django.urls导入,也就是你可以使用from django.urls import include, path, re_path...LiveServerTestCase添加多线程支持; Validators验证器 新的ProhibitNullCharactersValidator不允许CharField及其子类的表单输入为空; 三、重要的向后不兼容 1....QuerySet.reverse()和last()不能用于切片后的查询集 对切片后的查询集使用反转和获取最近对象的操作将弹出异常,如下所示: >>> Model.objects.all()[:2].reverse

    3.1K20

    django 使用框架下auth.mod

    需要改动三个地方: 1.models.py   创建模型User,并继承原模型类AbstraUser(在此处我增加了一个新的字段手机号) from django.db import models #...(max_length=11, unique=False, verbose_name='手机号') 2.settings.py   新增设置如下,‘first_app’为你的app的名字,‘User’为...models.py中第1步新创建的类名(也就是新的表名,此处仍使用原来自带的表名) # 继承原User表设置 AUTH_USER_MODEL = 'first_app.User' 3.此处有一个坑,大多数博客都没写此步骤...如代码中,注释掉的是之前我们使用框架自带的User类时所导入的User,而从当前目录models中导入的User才是我们扩展后使用的User,因为继承后原User已经被替换,此处不改会报错的: error:Manager...isn't available; 'auth.User' has been swapped for 'first_app.User' in Django # from django.contrib.auth.models

    60320

    django 1.8 官方文档翻译: 2-5-2 进行原始的sql查询

    django提供两种方法使用原始sql进行查询:一种是使用Manager.raw()方法,进行原始查询并返回模型实例;另一种是完全避开模型层,直接执行自定义的sql语句。...进行原始查询 raw()方法用于原始的sql查询,并返回模型的实例: Manager.raw(raw_query, params=None, translations=None) 这个方法执行原始的sql...LIMIT 1')[0] 延迟加载模型字段 字段也可以被省略: >>> people = Person.objects.raw('SELECT id, first_name FROM myapp_person...直接执行自定义sql 有时Manager.raw()方法并不十分好用,你不需要将查询结果映射成模型,或者你需要执行UPDATE、INSERT以及DELETE查询。...cursor.execute("UPDATE bar SET foo = 1 WHERE baz = %s", [self.baz]) cursor.execute("SELECT foo FROM

    1.5K20

    18个vscode插件打造python超实用IDE

    18个vscode插件打造python超实用IDE [9df1eca7-d389-4b23-be36-39319af8cee7.png] 当下编写python的IDE两个比较大的阵营,一个是pycharm...插件类别 Python Django flask-snippets Visual Studio IntelliCode Dash Emmet Python Docstring Generator Bookmarks...Error Lens File Utils GitLens indent-rainbow jumpy MetaGo Paste and Indent Project Manager Quick and...Simple Text Selection Settings Sync TODO Highlight Spell Right 后记 其中有一些插件,我之前没太接触过,比如Project Manager...感觉安装起来吧,真香~ 对原文感兴趣的可以直接查看原文,我就不翻译了,整体就是安装然后配置下,这些插件的文档都描述的很清楚,希望对你有所帮助 [18 Plugins for Writing Python in VS

    4.6K21

    django 1.8 官方文档翻译:2-1-1 模型语法

    简短的例子 这个例子定义一个Person模型,它有first_name 和last_name 两个属性: from django.db import models class Person(models.Model...例如: from django.db import models class Musician(models.Model): first_name = models.CharField(max_length...在这个例子中,自述名是 "person's first name": first_name = models.CharField("person's first name", max_length=30...继续上面的例子,当你查询Person模型的时候,你可以改变默认 管理器,例如: from django.db import models class NewManager(models.Manager...但在普通的多表继承中,子类不能继承父类的 manager ,这是因为在处理非基类字段时,父类的 manager 未必适用。 后一种情况在 管理器文档有详细介绍。

    6.1K20

    00x: Django models.Model详解

    简单实例 这个例子定义了Person ,并给它赋予了first_name 和last_name: 其中first_name 和last_name 是model的字段。...下面的例子中,verbose的名称是”person’s first name” 下面的例子中,verbose的值为”first name”: ForeignKey,ManyToManyField和OneToOneField...Model属性 objects: model最重要的属性是Manager。它是提供给Django的数据库查询操作的接口,用于从数据库中获取model实例。...若非特别声明Manager,它默认的名字为objects。Manager只能通过model类进行访问,不能通过model实例进行访问。...CommonInfo模型不能被用作是一个正常的Django模型,因为他是一个抽象基类,它不会生成数据库表或者有manager,不能被直接实例化或者保存。

    2.3K20

    Django模型查询与性能调优:告别N+1问题

    一、查询基础QuerySet 详解Django 中通过模型类的 Manager 构建 QuerySet 来检索数据库对象,其核心特性包括:代表数据库中对象的集合可通过过滤器缩小查询范围具有惰性执行特性(...from django.db import modelsclass Author(models.Model): first_name = models.CharField(max_length=100...Book.objects.select_related().get(id=2)print(b.author) # 已预加载到缓存,使用缓存,不查询数据库反向查询(通过关联管理器)# 未定义related_name, 默认Manager...例如:books = Book.objects.all()for book in books: print(book.author.first_name)以上代码会产生 1 次查询获取所有 Book...检测方法Django Debug Toolbar:直观显示请求中的 SQL 查询日志记录:配置日志记录 SQL 语句性能分析工具:如 Django Silk 分析查询性能解决方案方法 1:使用 select_related

    23510
    领券