首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django内置的通用类视图及实例

,各种有用的对象被存储在self上,同request(self.request)一样,其中包含了从URLconf中获取到的位置参数(self.args)和关键字参数(self.kwargs)....None):返回该视图要显示的单个对象.如果提供了queryset,该queryset将作为对象的查询源,否则,将使用get_queryset().get_object()从视图的所有参数中查找pk_url_kwarg...显示确认页面并删除现有对象的视图.仅当请求方法为POST时,才会删除给定的内容.如果此视图是通过GET提取的,它将显示一个确认页面,其中包含POST到同一网址的表单...."] 3、配置 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes...import url, include from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls

2.9K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django内置的通用类视图CBV及示例

    ,各种有用的对象被存储在self上,同request(self.request)一样,其中包含了从URLconf中获取到的位置参数(self.args)和关键字参数(self.kwargs)....None):返回该视图要显示的单个对象.如果提供了queryset,该queryset将作为对象的查询源,否则,将使用get_queryset().get_object()从视图的所有参数中查找pk_url_kwarg...显示确认页面并删除现有对象的视图.仅当请求方法为POST时,才会删除给定的内容.如果此视图是通过GET提取的,它将显示一个确认页面,其中包含POST到同一网址的表单...."] 3、配置 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes...import url, include from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls

    3.2K10

    【Django】 开发:数据库操作和后台管理

    值) 实现批量修改 返回值:更新数据的数量 如: # 将id大于3的所有图书价格定为0元 books = Book.objects.filter(id__gt=3) books.update(price...方法分组聚合得到分组结果 QuerySet.annotate (名 = 聚合函数 (‘列’)) 返回 QuerySet 结果集,内部存储结果的字典 如: pub_count_set = pub_set.annotate...('delete from bookstore_book where id=10;') admin 后台数据库管理 django 提供了比较完善的后台管理数据库的接口,可供开发过程中调用和测试使用 django...app 中的 admin.py 中导入注册要管理的模型 models 类,如: from .models import Book 2.调用 admin.site.register 方法进行注册,如:...类型的记录,不便于阅读和判断 在用户自定义的模型类中可以重写 方法解决显示问题,如: 在 自定义模型类中重写 str(self) 方法返回显示文字内容: class Book(models.Model

    4.1K40

    用django写接口(优化篇)

    作者:Kuky_xs 博客:https://www.jianshu.com/u/9fcd71535294 前言 系列文章: 《django入门:环境及项目搭建》 《django入门:数据模型》 《django...入门:视图及模版》 《django入门:Admin管理系统及表单》 《django入门:通用视图类重构视图》 在《用django写接口(入门篇)》提到这篇会讲 views 的代码优化,在这之前,我们先适当了解下...Request 和 Response 我们将分别通过 @api_view,APIView 和通用视图类对 view 进行一些改造 api_view 注解重构 # ....import 省略 # 将该视图的请求方法写在注解中...在结束文章的最后,记录自己写的时候遇到的一个坑,当更新 ManyToMany 字段的时候,我们需要重新写 post 方法,直接传 id 是不能更新的,直接传 id 是不能更新的,直接传 id 是不能更新的..."," in request.data['tags']: # 我们需要提取 request.data 中 tags 所对应的值,然后通过切割字符串取出 id

    2.2K20

    Django-models & QuerySet API

    django中配置mysql数据库 查询queryset时如果需要选取查询集中的某个子集的字段时, 应该用切片,或者first 选择某个子集对象,这样才能够使用到 子集的字段,直接queryset后选择字段会直接报错...blank    为True时,admin中可以为空。但是不限制数据库,要想限制数据库里,需要设置null。 choices   选择框。...从数据库中查询出来的结果一般是一个QuerySet集合。...kang').delete() (1, {'app01.Person': 1}) #删除了一条数据 另一种方法:通过admin页面对数据进行增删改查 1,创建admin用户名密码 >python...manage.py createsuperuser 2,在应用下admin.py中引入自身的models模块(或里面的类) vim admin.py from django.contrib import

    1.4K20

    django优雅的实现软删除,支持Admin和DRF的软删除

    同样的,DRF对外操作的其他接口,如查询,修改操作,就不允许找到已经软删除的数据。 自带的Admin 既然是超级管理后台,那么就允许操作任何数据,包括已经软删除的,而不是列表找不到软删除的数据。...简而言之: drf找不到删除的数据,admin需要全部数据 drf和admin删除数据都是软删除 解决方案 DRF Django Manager 赋予了 Django的模型(Model)中操作数据库的能力...也就是如:Book.objects.all()中的objects。有没有想过它到底是什么? 显然,默认的模型Manager并不能解决我们的问题,所以我们需要自定义模型的Manager。...,发现get_queryset方法是执行获取查询的,那么把它重写了。...注册中,重写get_queryset: @admin.register(Book) class BookAdmin(admin.ModelAdmin): def get_queryset(self

    2.4K40

    05.Django基础五之django模型层(一)单表操作

    : 方法一: User.objects.filter(id=1).update(username='nick',is_active=True) 方法二: _t = User.objects.get...同样可以使用如下两种方法: 方法一: data = {'username':'nick','is_active':'0'} User.objects.filter(id=1).update(**data...注意2:确保配置文件中的INSTALLED_APPS中写入我们创建的app名称 INSTALLED_APPS = [ 'django.contrib.admin', #这是django给你提供的一些特殊功能的配置...类型的数据来调用,从返回结果中剔除重复纪录 queryset方法大全: #################################################################...()方法对于任何结果集(QuerySet)均有效,这意味着你可以同时更新多条记录update()方法会返回一个整型数值,表示受影响的记录条数。

    3K10

    使用 Django 的 admin 定制后台,丰富自己网站的后台管理系统

    admin 的注册 首先,如果要在 Django 的后台显示应用的模型,必须在应用所在的 admin.py 文件中注册模型。...ModelAdmin 的详细参数 查看源码 为了更好的了解 Django 的管理类有哪些基本属性,我们可以去 Django 的源码中查找这个类的源代码,看一下它有哪些默认的属性和方法。...'show_content') # 设置需要添加a标签的字段 list_display_links = ('id', 'show_content') # 使用方法来自定义一个字段,并且给这个字段设置一个名称...使用方式很简单: 第一步: 安装 bootstrap-admin $ pip install bootstrap-admin 第二步:添加到应用的配置中 # 添加了新的app需要重启服务器 INSTALLED_APPS...如果要实现真正意义上的定制有别于 Django 自带的后台管理系统,xadmin 应该是最值得推荐的,它单独实现了一个后台管理,具体的介绍和使用方法可以自行查看 Github 的项目介绍,地址:https

    3.2K10

    Django项目知识点(四)

    Django ORM用到三个类:Manager、QuerySet、Model。...Manager定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manager为父类,定义自己的manager,增加表级方法; QuerySet:Manager类的一些方法会返回...QuerySet实例 就是从数据库根据自己要求拿数据的 连数据都那不出来,写啥视图 所以在编写queryset必须用django shell 调试 在model中,Django通过给Model增加一个objects...annotate方法属于高级查询方法,主要用于组合查询,是Django高手们必需要熟练掌握的。...这样就可以引用模型字段值并使用它们执行数据库操作,而无需实际将它们从数据库中拉出到Python内存中 说白了就是我从数据库拿东西,但是有些需要的字段没有,要通过绑定的外键的app的model拿。

    1.6K30
    领券