提出问题:

bootstrap-table 可以根据ajax地址load的json数据。这个json数据一般就是数据库中查询的结果,而数据库中存放的数据一般不是用户友好的,比如数据表示一般使用简洁id或者英文,而将数据的具体定义放在其他位置。

举个例子:

表格1: ***,**** ,类型id

表格1数据达到几万行,而数据中,类型id是个数字,类型id的解释意义在其他表格中存放,一共只有三个类型。

如果我们直接载入表格1数据,那么在前端展示中,显示的类型id是一串数字,显然是不友好的。

解决这个问题的办法有以下几种:

1.在客户端定义对类型id的解释,某个id对应某个中文名称,这个对应关系实际就是数据库中的对应关系,但是由于这边类型只有几种,可以在代码中写死,不需要重新查询数据库。

优点:简单容易实现,不占用网络流量

缺点:代码写死,以后存在数据库中类型增删同时需要修改这部分代码。如果这样的代码一多,维护成为一件非常可怕的事情。

2.在服务端就将返回数据替换为显示的格式与意义。这个数据库查询时候直接获取,在服务器里面修改代码就可以实现

优点:客户端直接显示即可,简单

缺点:占用流量变大,一个字节的内容变为多个字节。

3.将类型id这种数据单独使用ajax查询获取数据,在客户端获取对应关系

优点:占用流量小,代码集中,具备自适应性来应对未来的数据改变

缺点:客户端需要增加一个ajax查询,由于该查询是的数据量非常小,也会很快。

综上所述:

我认为第三种方法最好,这个不但可以将表现与具体数据分隔开,使得展示的代码更加集中易于修改。并且占用网络流量也不多。

注意:

请求表现格式的代码不能直接放入data-formatter中,这样做的话,会导致每读一行都会请求表现数据,这个数据可以放在全局变量里面进行复用,或者放在jquery等闭包中。

最新文章

  1. Flex Layout Attribute
  2. 微信浏览器或各种移动浏览器上:active伪类做的触觉反馈失效
  3. 第十六章:异步处理之AsyncTask的应用
  4. 【原创】pads2007 Layout 电气连接性检查过孔显示错误
  5. 免费提供一些公开的SOCK4/5/HTTP/HTTPS代理服务器(经测试可以用)
  6. android:id="@+id/button1" 与 android:id="@id/button1" 区别 @string
  7. linux查看端口是否已开启和查看文件数
  8. Spark小课堂Week3 FirstSparkApp(RDD开发)
  9. man手册使用
  10. MySql数据库3【优化1】表的优化
  11. linux 安装mysqlServer
  12. (@WhiteTaken)设计模式学习——建造者模式
  13. 第49章:MongoDB-数据导入导出
  14. curl安装和使用
  15. less编译工具——koala使用介绍
  16. Flask 视图,模板,蓝图.
  17. git aliases
  18. 使用Windbg找出死锁,解决生产环境中运行的软件不响应请求的问题
  19. Linux 权限修改
  20. Visual Studio 2015 + Update 1

热门文章

  1. dos中的延迟环境变量扩展
  2. CSS块级元素、内联元素概念[转]
  3. js中的函数参数问题
  4. 【Django】Django Debug Toolbar调试工具配置
  5. Spring框架总结(十一)
  6. KindEditor3.x整合教程-Xproer.WordPaster
  7. ScreenCapture-drupal 7.34-ckeditor4x整合教程
  8. Intel GPA果然是神器
  9. Adding Cache-Control headers to Static Files in ASP.NET Core
  10. element-ui学习