Backbone.js Wine Cellar教程–第二部分:CRUD

  次阅读 来源:互联网(转载协议) 2016-01-19 11:18 我要评论(0)

Backbone.sync 是一个函数, Backbone 每次尝试读取模型或将其保存至服务器时都会调用该函数。默认情况下,它使用 (jQuery/Zepto).ajax 发出 RESTful JSON 请求。您可以替换它,以便利用不同的持久性策略,比如 WebSockets、XML 传输或本地存储。

Adobe Creative Cloud

您可以免费注册Adobe创意云服务。Creative Cloud上还提供了诸多HTML5开发工具,包括可以免费下载HTML5动画制作工具Edge Animate,开发工具Edge Code,移动应用测试工具Edge Inspect等。

Creative Cloud的登录地址在此:http://t.cn/zTbTLKT

在本教程第一部分:入门,我们安装了 Wine Cellar 应用程序的基本结构。迄今为止,该应用程序仍为只读程序,因此只允许您检索葡萄酒列表并显示您所选择的葡萄酒详细信息。

在本文的第二部分中,您将学习创建、更新及删除 (CRUD) 葡萄酒。

HTTP 方法

URL

操作

GET

/api/wines

检索所有葡萄酒

GET

/api/wines/10

检索 id == 10 的葡萄酒

POST

/api/wines

添加新葡萄酒

PUT

/api/wines/10

更新 id == 10 的葡萄酒

DELETE

/api/wines/10

删除 id == 10 的葡萄酒

这些服务的 PHP 版本(使用Slim 框架)均将随下载内容一同提供。 本文还将提供一个类似的 Java 版本的 API(使用 JAX-RS)。

搭配使用 Backbone.js 和非 RESTful 服务

如果您的持久层无法通过 RESTful 服务进行提供,您可以替换 Backbone.sync。在本文档中:

Backbone.sync 是一个函数, Backbone 每次尝试读取模型或将其保存至服务器时都会调用该函数。默认情况下,它使用 (jQuery/Zepto).ajax 发出 RESTful JSON 请求。您可以替换它,以便利用不同的持久性策略,比如 WebSockets、XML 传输或本地存储。

我不会在本教程中讨论非 RESTful 服务的使用。有关更多信息,请参阅文档 。

添加创建、更新和删除功能

您可以 运行将在本教程中进行编码的应用程序。此在线版本的创建、更新和删除功能均已禁用。

此在线版本的创建、更新和删除功能均已禁用。

图 2. backbone.js 代码

代码重点

Wine(第 2 行至第 14 行)

第二部分向该葡萄酒模型添加了两个属性,如下所示:

(1)urlRoot (第 3 行):RESTful 服务终端将检索或保存模型数据。请注意,只有在检索/保存独立于集合的模型时才需要使用此属性。如果该模型是集合的一部分,集合中定义的 URL 属性足以供 Backbone.js 了解如何使用您的 RESTful API 检索、更新或删除数据。

(2)Defaults (第 4 行):为模型创建新实例时使用的默认值。此属性是可选属性。但是,此应用程序需要使用此属性促使 wine-details 信息模板呈现 空 葡萄酒模型对象(该情况将在添加新葡萄酒时发生)。

WineListView(第 22 行至第 40 行)

当用户添加新葡萄酒时,您希望它自动显示在列表中。要做到这一点,请将视图绑定至 WineListView 模型(葡萄酒集合)的添加事件。当事件触发后,该应用程序会创建新的 WineListItemView 实例并将其添加到该列表中。

WineListItemView(第 42 行至第 62 行)

(1)当用户改变葡萄酒时,您希望对应的 WineListItemView 自动重新呈现以反映这种变化。要做到这一点,请将视图绑定至其模型的更改事件,然后在触发事件时执行 Render 函数。同样,当用户删除葡萄酒时,您希望自动删除列表项。

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • Oculus公布原型机,大幅度提升可视角,能实现140°的视场水平

    Oculus公布原型机,大幅度提升可视角,能实现140°的视场水平

  • teamLab创始人猪子寿之: 抛去衣食住行,我还剩下什么?

    teamLab创始人猪子寿之: 抛去衣食住行,我还剩下什么?

  • Michael I. Jordan带你解读百万奖金ATEC蚂蚁人工智能大赛

    Michael I. Jordan带你解读百万奖金ATEC蚂蚁人工智能大赛

  • 2018深圳国际人工智能展览会 2018 shenzhen International Artif

    2018深圳国际人工智能展览会 2018 shenzhen International Artif

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...