zoukankan      html  css  js  c++  java
  • python+Django CRM客户关系管理系统开发(九)--只读字段处理

    一、本节目标

    前几节,我们实现了数据展示,数据增删改查,本节我们完善一下,对于一些只读字段,只让它显示到前端,不让人对其进行修改。

    二、功能分析

    1、admin的实现方式是,在自定义admin里添加readonly_fields字段,然后在admin里修改的时候,对应的字段就只是显示在前端,不会被修改。

     admin上显示如图所示,只有显示,没有修改功能:

    三、功能开发

    1、在baseadmin里添加readonly_fields:

    2、在自定义admin里添加对应的字段

     3、由于修改表单,是通过动态生成显示在前端页面的,因此,修改还得从那里修改。

    在动态生成form里,排除只读字段,再通过前端把只读字段显示在前端即可。这样修改from的时候不会验证只读字段。

     4、同时,将只读字段在前端获取并显示在前端

    获取对应字段的值,这里使用反射getattr这个功能,因此还得需要在tag里生成,然后返回给前端:

     前端引入此tag,修改页面添加:

    5、此时修改功能,只读字段显示正常:

    目前对于下拉框,只显示了序号,没有显示值,这个先记录以后再解决。

    6、此时添加功能会报错,因为只读字段status没有值

     因此,需要做个判断,如果是添加表单,就不要只读字段,如果是修改表单,就带着只读字段:

     add视图添加一个字段form_add = True

    此时添加和修改功能均正常可用。

  • 相关阅读:
    AFNetworking 3.0中调用[AFHTTPSessionManager manager]方法导致内存泄漏的解决办法
    UITableView自动计算cell高度并缓存
    iOS 10 应用内跳转到系统设置
    iOS 系统通知
    UITableViewDataSource TableView數據源協議
    HADOOP操作权限问题
    Echarts简单图表
    hadoop常见错误解决方法
    sqoop安装与简单实用
    hive的内置函数和自定义函数
  • 原文地址:https://www.cnblogs.com/realizetomoney/p/13909590.html
Copyright © 2011-2022 走看看