一、Creating

1. 你可以通过调用在store中的createRecord方法来创建records。

store.createRecord('post', {
title: 'Rails is Omakase',
body: 'Lorem ipsum'
});

2. 这个store对象可以通过this.storecontrollersroutes中使用。

3. 尽管createRecord相当简单,唯一要注意的是你不能分配一个promise作为一个关系。例如,如果你希望设置一个postauthor属性,如果user的id没有被加载进store,这将不会实现:

var store = this.store;

store.createRecord('post', {
title: 'Rails is Omakase',
body: 'Lorem ipsum',
author: store.findRecord('user', 1)
});

4. 然而,在这个promise实现之后你可以很容易的设置关系:

var store = this.store;

var post = store.createRecord('post', {
title: 'Rails is Omakase',
body: 'Lorem ipsum'
}); store.findRecord('user', 1).then(function(user) {
post.set('author', user);
});

二、Deleting records

删除记录和创建记录一样简单。仅仅是调用 DS.Model任意实例上的deleteRecord()方法。这标记这个record是isDeleted并且因此从store上的all()查询上移除它。

然后使用save()删除可以被持久化(指在数据库上也删除)。或者,你可以使用destroyRecord方法同事删除并持久化。

store.findRecord('post', 1).then(function(post) {
post.deleteRecord();
post.get('isDeleted'); // => true
post.save(); // => DELETE to /posts/1
}); // OR
store.findRecord('post', 2).then(function(post) {
post.destroyRecord(); // => DELETE to /posts/2
});

7.3 Models -- Creating And Deleting Records的更多相关文章

  1. ERROR:"org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /config/topics/test" when creating or deleting Kafka operations authorized through the Ranger policies

    PROBLEM DESCRIPTION When creating or deleting topics in Kafka, they cannot be authorized through the ...

  2. Ember.js学习教程 -- 目录

    写在前面的话: 公司的新项目需要用到Ember.js,版本为v1.13.0.由于网上关于Ember的资料非常少,所以只有硬着头皮看官网的Guides,为了加深印象和方便以后查阅就用自己拙劣的英语水平把 ...

  3. Models

    Models Models control the data source, they are used for collecting and issuing data, this could be ...

  4. Database ORM

    Database ORM Introduction Basic Usage Mass Assignment Insert, Update, Delete Soft Deleting Timestamp ...

  5. Professional C# 6 and .NET Core 1.0 - 38 Entity Framework Core

    本文内容为转载,重新排版以供学习研究.如有侵权,请联系作者删除. 转载请注明本文出处:Professional C# 6 and .NET Core 1.0 - 38 Entity Framework ...

  6. 学习笔记:The Best of MySQL Forum

    http://mysql.rjweb.org/bestof.html I have tagged many of the better forum threads. 'Better' is based ...

  7. Professional C# 6 and .NET Core 1.0 - Chapter 38 Entity Framework Core

    本文内容为转载,重新排版以供学习研究.如有侵权,请联系作者删除. 转载请注明本文出处:Professional C# 6 and .NET Core 1.0 - Chapter 38 Entity F ...

  8. Local Databases with SQLiteOpenHelper

    Overview For maximum control over local data, developers can use SQLite directly by leveraging SQLit ...

  9. HEC-ResSim原文档

              HEC-ResSim Reservoir System Simulation             User's Manual       Version 3.1 May 201 ...

随机推荐

  1. POJ 1946 Cow Cycling(抽象背包, 多阶段DP)

    Description The cow bicycling team consists of N (1 <= N <= 20) cyclists. They wish to determi ...

  2. Extjs学习笔记--(一vs增加extjs智能感知)

    1,编写class.js var classList=[ "Ext.layout.container.Absolute", "Ext.layout.container.A ...

  3. THINKPHP ajax分页示例

    先把框架的page类改造一下 路径在ThinkPHP/Library/Think/Page.class.php文件 添加一个方法 ajax_show 代码如下 <?php /** * 组装分页链 ...

  4. angularjs基础——控制器

    1)当使用非空ng-app和ng-controller时,变量由angularjs控制器来处理 2)控制器接管模型变量后,直接修改模型,模版里的变量还是会自动变的 <!DOCTYPE html& ...

  5. 【RF库Collections测试】Get From Dictionary

    Name:Get From DictionarySource:Collections <test library>Arguments:[ dictionary | key ]Returns ...

  6. Python 入门(七)函数

    什么是函数 我们知道圆的面积计算公式为: S = πr² 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = ...

  7. 【BZOJ3156】防御准备 斜率优化

    [BZOJ3156]防御准备 Description Input 第一行为一个整数N表示战线的总长度. 第二行N个整数,第i个整数表示在位置i放置守卫塔的花费Ai. Output 共一个整数,表示最小 ...

  8. ORA-01153: an incompatible media recovery is active

    ORA-01153: an incompatible media recovery is active Cause: Attempted to start an incompatible media ...

  9. angularJS的路由!

    angularJS 路由:(分发需求) angularJS 中路由是单独提供的功能模块,ngRoute  也是一个单独发行的文件 可以通过 npm 去安装这个包:angular-route <s ...

  10. onethink----网站配置信息调用!

    {:C('WEB_SITE_TITLE')} // 标题 {:C('WEB_SITE_DESCRIPTION')} // 描述 {:C('WEB_SITE_KEYWORD')} // 关键词 {:C( ...