当前位置: 首页 > 网络应用技术

灰烬数据模型定义

时间:2023-03-07 18:53:19 网络应用技术

  Ember数据在“ Ember.js项目开发”中介绍了Ember数据。本文将继续介绍模型的定义。

  模型是定义向用户提供数据的数据的类。如果用户返回(或刷新页面),则他们希望看到的任何内容应由模型表示。

  在为应用程序创建新模型时,您需要在文件夹下创建一个新文件并从其扩展。使用Ember CLI可以轻松完成此操作。例如,创建下面的模型:

  这将生成以下文件:

  定义模型类后,您可以开始查找和使用此类型的记录。

  该模型通常以单个数字的形式设置(这就是为什么在本文中使用它的原因)

  生成模型后没有属性,并且一些属性开始添加:下面:

  当从服务器返回的JSON的有效负载转换为记录时,并在修改记录后序列化记录记录以保存后排服务器时,它将使用该属性。

  您可以像其他任何属性一样使用属性,包括功能中的使用。

  服务器返回的属性的类型可能与JavaScript代码中需要使用的类型不匹配。Ember数据允许使用第一个参数来指定属性类型的简单序列化和依赖性方法。您可以通过提供第一个参数来指定属性的转换。转换名称作为方法。由Ember数据支持的属性类型,并且这些类型被迫将值转换为与其名称匹配的JavaScript类型。

  日期转换将字符串转换为JavaScript日期对象。

  布尔转换可以处理或外部值。标准或任何大写字母,反之亦然。

  不需要转换。如果没有指定的转换名称,则不会将其添加到值中。

  创建自定义转换可以由生成器创建:

  这是一个简单的转换,可以在美元和美元之间转换。

  转换中有两个函数:序列化和加深序列化。圆周化将值转换为客户端期望的格式。进行序列化相反,将值转换为持久性层预期的格式。

  以下使用自定义转换:

  选项的哈希也可以用作第二个参数。当前的唯一可用选项是它可以使用值或函数来设置属性的默认值(如果未提供)。

  在下面的示例中,定义的默认值是,默认值是模型创建的当前日期:

  当API仅返回仅读取对象或数组的深嵌套时,无需创建与关系的多个模型。这可能会导致大量不必要的代码,这些代码可以在模板中访问这些对象而无需更改它们。通过无指定转换的使用: