小编Kal*_*man的帖子

使用余烬数据的非CRUD操作

假设我有以下ember-data模型:

App.Person = DS.Model.extend({
    firstName: DS.attr('string'),
    lastName:  DS.attr('string'),
    starred:   DS.attr('boolean')
});
Run Code Online (Sandbox Code Playgroud)

这与使用以下非常标准的CRUD API的Rails应用程序通信:

GET    /people    - get a list of people
POST   /people    - create a new person
GET    /people/id - get a specific person
PUT    /people/id - update a specific person
DELETE /people/id - delete a specific person
Run Code Online (Sandbox Code Playgroud)

这些都使用标准存储/适配器映射到Ember-Data.

但是,让我们说,为了让一个人"明星化"或"解除明星化",API不允许我们通过标准更新操作来执行此操作.此操作有一个特定的API端点:

POST   /people/id/star   - mark a person as "starred"
POST   /people/id/unstar - mark a person as "unstarred"
Run Code Online (Sandbox Code Playgroud)

如何在Ember Data中使用此API?

看起来我需要以某种方式扩展DS.Store和DS.RESTAdapter,但我不确定让他们了解这些不同操作的最佳方法.对于应用程序的通用适配器必须知道主演人员,也感觉有点不对劲.

请注意,我无法控制API,因此我无法POST /people/id了解"主演",因此它适合标准更新.

javascript ember.js ember-data

12
推荐指数
2
解决办法
1949
查看次数

Rails 6:如何通过 webpacker 添加 jquery-ui?

我目前正在尝试在我的应用程序中实现一个日期选择器,问题是没有关于如何jquery-ui-rails通过 webpacker添加gem 的文档。

可能还有另一种方法可以添加宝石或其他适合我需要的宝石?

jquery-ui ruby-on-rails webpacker ruby-on-rails-6

9
推荐指数
2
解决办法
1万
查看次数

在ember-cli服务器上为静态文件设置CORS

如何在内置的ember-cli服务器上对字体文件(或任何其他静态资源)的请求设置CORS?

这是仅供参考的错误消息:

Font from origin 'http://some-domain:4200' has been blocked from loading by Cross-Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:61277' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)

cors ember.js ember-cli

6
推荐指数
1
解决办法
4551
查看次数

拖放示例任务应用程序

app.js

App = Em.Application.create();

App.IndexRoute = Em.Route.extend({
  model: function(){
   return {
    newTasks: Em.A([
      {id: 1, name: "Task 1"},
      {id: 2, name: "Task 2"},
      {id: 3, name: "Task 3"}
    ]),
    inProgressTasks: Em.A([
      {id: 4, name: "Task 4"},
      {id: 5, name: "Task 5"}
    ]),
    doneTasks: Em.A([
     {id: 6, name: "Task 6"}
    ])
    };
    }
   });

App.IndexController = Em.Controller.extend({
  actions: {
    moveTask: function(taskID, from, to){
      var model = this.get('model'); 
      var task = model[from].findProperty('id', parseInt(taskID, 10));
      model[to].pushObject(task);
      model[from].removeObject(task);
    }
  }

});

App.TaskContainerComponent = Em.Component.extend({ …
Run Code Online (Sandbox Code Playgroud)

ember.js

5
推荐指数
1
解决办法
965
查看次数

Ember JS如何获取具有唯一属性值的数组

我有一个包含不同属性的对象的数组.有些属性相似的对象.例如,

var array=[{'property':1},{'property':2},{'property':1}]
Run Code Online (Sandbox Code Playgroud)

如何使用ember js获取具有唯一属性的数组?

最后我需要一个数组

[{'property':1},{'property':2}]
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助.

更新:我尝试了uniq()方法.但是这不允许传递属性,因为ember允许进行排序.

谢谢!

javascript arrays jquery unique ember.js

3
推荐指数
1
解决办法
4975
查看次数

单独的REST后端API的优点?

背景:我是一名初学程序员,自学成才,希望能成为一名SPA.我开始使用JavaScript,Jquery,PHP和MySQL,现在对所有人都非常有信心.我从Ember开始,现在正在从拥有PHP API转向Node.这让我更接近Meteor ......我知道我需要使用Mongo,但是前后集成似乎是明智的并且有一些优势.

所以我的问题是拥有一个单独的REST后端API(例如Express)而不是集成的前端/后端(例如Meteor)有什么优势.

让我想起的是我的应用程序将基于平板电脑/ PC,但将来我会想要一个不同的移动版本,所以我只能使用相同的API.我意识到上述问题是这个堆栈问题的主要问题,但也许如果一个流星开发者可以澄清这是否确实是一个问题.

提前致谢!

express ember.js angularjs meteor sails.js

2
推荐指数
1
解决办法
3606
查看次数