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!

人工智能实验室
相关文章相关文章
  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

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

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...