博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习Backbone中的一些疑惑
阅读量:6605 次
发布时间:2019-06-24

本文共 612 字,大约阅读时间需要 2 分钟。

hot3.png

1,model的id,idAttribute和cid的区别?

答:cid和id都是model的唯一标识符,使用二者任意一个都可以从collection中返回一个model。

        cid存储了Backbone.js为model分配的客户端唯一标识,在某些情况下(比如新增数据),你的对象还没有存入数据库中,站在服务端角度,这个model还没有一个唯一标识,但是客户端为其生成了一个cid,这时,在客户端的角度,此时,这个model与其他同类的model没有什么区别,这样前端代码就可以方便的统一处理这一类model,而不用考虑特殊情况。  

        理想的情况下,我们希望,服务端使用服务端的标识,客户端使用客户端的标识

        但是,如果数据需要与服务端进行交互,就需要建立两方数据的对应关系,这个就是id就作用了 。id存储了数据在服务端的唯一标识,比如服务端这个model的主键叫“id”,当客户端model更新时,可以使用这个id去更新服务端model的数据。

        但是,我们服务端model的主键是由服务端开发人员取名,不一定就叫命名为“id”(好讨厌啊), 那么,客户端最好能指定model的id对应到服务端model的哪个主键,那么idAttribute的诞生就是理所当然了。

        三者结合,让前端代码更方便,清晰,不得不说,这种设计很巧妙。

        

转载于:https://my.oschina.net/xcchcaptain/blog/510141

你可能感兴趣的文章
[转]平面方程
查看>>
20165105 第八周学习总结
查看>>
Sublime Enter Key Setting自动缩进设置
查看>>
maven在win7系统上的安装
查看>>
实例讲解教你读懂路由表
查看>>
Glibc 和 uClibc
查看>>
VMware 虚拟机的虚拟磁盘编程知识点扫盲之二
查看>>
Have a Good Attitude 良好的态度
查看>>
win7 web开发遇到的问题-由于权限不足而无法读取配置文件,无法访问请求的页面...
查看>>
vs2012中自带IIS如何让其他电脑访问
查看>>
谁(何时)需要设置监听器(回调)
查看>>
关于termux在手机上搭载Linux系统,python,ssh
查看>>
Redux:异步操作
查看>>
Mysql学习第三课-分析二进制日志进行增量备份和还原
查看>>
2-11
查看>>
关于C#调用广州医保HG_Interface.dll调用的一些总结(外部组件异常)
查看>>
N2CMS——Bugs解决方案总结
查看>>
Appium IOS
查看>>
xhprof安装记录
查看>>
POJ1961 Period [KMP应用]
查看>>