gpt4 book ai didi

ember.js - 我可以使用 Ember Data 发布多个模型吗?

转载 作者:行者123 更新时间:2023-12-04 15:42:21 26 4
gpt4 key购买 nike

因此,假设您有一个用户模型,该模型设置为相当标准的 API。在前端,您有一个 Ember 项目,该项目也具有该 User 模型。正常的创建调用类似于以下内容:

store.createRecord('user', {email: 'test@gmail.com'}).save();

这会将 POST 请求发送到类似 /api/users 的内容。 .然而,相当广泛的 API 支持是一次创建多个模型。例如,不是 POST 调用,而是在 user: {email: 'test@gmail.com'} 下发送单个对象。它会发送一个对象数组,如 users: [{email: 'test@gmail.com'}, {email: 'test2@gmail.com'}, ...] .

我在 ember 中看到的处理方式是在运行时进行多次创建调用。但是,这是非常低效的,我想知道 Ember 是否支持同时保存多个模型?你将如何在 Ember 中实现这一目标?

最佳答案

您无法按照您的描述在单个 POST 请求 Ember Data 中保存模型数组,但是有一种方法。

您可以保存一个父模型 hasMany 'user'EmbeddedRecordsMixin ,这将包括关系 ID 或完整记录。你的序列化器看起来像 -

import DS from 'ember-data';

export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
users: { embedded: 'always' },
}
});

根据您的用例,仅为此目的创建父模型可能是有意义的, hasMany 'user' .如果您想使用现有模型并且不总是想嵌入其用户记录,则有一个答案 here .

如果您决定单独保存模型,您应该执行 users.invoke('save') ,这将触发每个模型的 POST。

关于ember.js - 我可以使用 Ember Data 发布多个模型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33616157/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com