当前位置: 首页 > news >正文

Django学习

一、djangoadmin

- change_form_template = 'groupsend/group_form.html' #修改当前的模版
- filter_vertical = ('questionnaire',)  #多对多显示时,数据移动选择(方向:上下显示)
- filter_horizontal = ('questionnaire',)  #多对多显示时,数据移动选择(方向:左右显示)
- fields   #详细页面时,需要显示的内容
- list_display = ("stem",'type',"option_A","option_B",'questionnaire',) #显示可定制的列
- search_fields = ('name',) #显示可搜索的列
- actions =[func,] #批量执行操作
    def func(self,request,queryset):
        print request
    func.short_description = '批量删除'
    actions = [func,]
- list_display_links = ('name',) #提供一个超链接,让跳转到form_change可编辑页面
- list_editable = ('status',)   # 定制可编辑的列
- fields = ('name','start_datetime','end_datetime','status',)  #详细页面(点击添加时)显示需要的列
- readonly_fields = ('name','status') #详细页面时显示只读字段
1、save_model(request,obj,form,change):此方法为admin界面用户保存model实例时的行为。
    参数说明:
        request为HttpResponse实例
        obj为model实例
        form为ModelForm实例
        change为bool值,取决于model实例是新增的还是修改的。
    e.g:可以吧request.user保存为model实例的属性
        form django.contrib import admin
        class ArticleAdmin(admin.ModelAdmin):
            def save_model(request,obj,form,change):
                obj.user = request.user
                obj.save()
2、delete_model(request,obj):admin界面用户删除model实例的方法
3、get_ordering(request):排序
    e.g:    
        class get_ordering(admin.ModelAdmin):
            if request.user.is_superuser:
                return ['name','rank']
            else:
                return ['name']
4、get_readobly_fields(request,obj=None):返回只读字段

 

二、from django.views.decorators.http import require_GET

django.views.decorators.http:根据请求方法,装饰器可用于限制对视图的访问
    Django提供了几个可用于视图的装饰器,以支持各种HTTP功能
    e.g1:装饰者要求视图只接受特定的请求方法。用法:
        from django.views.decorators.http import require_http_methods

        @require_http_methods(["GET", "POST"])
        def my_view(request):
            # I can assume now that only GET or POST requests make it this far
            # ...
            pass
    e.g2:如果只要求视图只接受GET请求,也可直接导入require_GET
        from django.views.decorators.http import require_GET
        @require_GET
        def my_view(request):
            pass
    require_GET()
    装饰者要求视图只接受GET方法。

    require_POST()¶
    装饰者要求视图只接受POST方法。

    require_safe()¶
    装饰者要求视图只接受GET和HEAD方法。这些方法通常被认为是“安全的”,因为除了检索请求的资源之外,它们不应具有采取行动的意义。

 

相关文章:

  • 性能是.NET Core的一个关键特性
  • itext7 html转pdf实现
  • django常见问题
  • mysql 查询表的字段数目
  • docker run 与docker start的区别
  • qsort用法
  • Python3学习笔记-构造函数与析构函数
  • SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种)
  • Java入门 | 如何傻瓜式的安装JDK和配置环境变量?
  • git 比较 change to be committed
  • MySQL DDL--ghost工具学习
  • Vue父子组件传值 | 父传子 | 子传父
  • 【转】奇异值分解(SVD)原理详解及推导
  • MaxCompute studio FAQ
  • dubbo-admin2.8.4部署
  • CentOS7简单部署NFS
  • css的样式优先级
  • Docker 笔记(2):Dockerfile
  • JavaScript 一些 DOM 的知识点
  • Javascript弹出层-初探
  • miaov-React 最佳入门
  • Netty 4.1 源代码学习:线程模型
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • STAR法则
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • web标准化(下)
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 汉诺塔算法
  • 删除表内多余的重复数据
  • 实现简单的正则表达式引擎
  • 树莓派 - 使用须知
  • 思维导图—你不知道的JavaScript中卷
  • 通过npm或yarn自动生成vue组件
  • 写代码的正确姿势
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • 浅谈sql中的in与not in,exists与not exists的区别
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • 组复制官方翻译九、Group Replication Technical Details
  • ​一些不规范的GTID使用场景
  • #pragam once 和 #ifndef 预编译头
  • (1)(1.13) SiK无线电高级配置(六)
  • (1)虚拟机的安装与使用,linux系统安装
  • (超详细)语音信号处理之特征提取
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (转)EXC_BREAKPOINT僵尸错误
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • .Net Remoting(分离服务程序实现) - Part.3
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .Net8 Blazor 尝鲜
  • @transactional 方法执行完再commit_当@Transactional遇到@CacheEvict,你的代码是不是有bug!...
  • [Android 数据通信] android cmwap接入点
  • [AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存
  • [autojs]autojs开关按钮的简单使用