Tag: loopbackjs

Strongloop Loopback:按相关模型的ID进行过滤

我有一些模型和关系的一个Strongloop Loopback Node.js项目。 手头的问题 我的问题涉及如何仅使用Angular SDK查询与某个Tag ID有关系的Media实例, 而不查询Tags.media (返回Tag实例),而是以某种方式进行查询以返回纯Tags.media Media实例。 请阅读下面的具体信息.. 规格 基本上,我有一个模型Media有许多“标签”(模型Tag )。 想象一下具有各种EXIF标签( Tag )的图像文件( Media )。 这是关系规范(这一切都按预期工作): 媒体(media.json): { "name": "media", "base": "PersistedModel", "properties": { "id": { "type": "string", "id": true } }, "relations": { "tags": { "type": "hasAndBelongsToMany", "model": "tag" } } 标签(tag.json): { "name": "tag", "base": "PersistedModel", "idInjection": true, "properties": […]

回环REST findById不能正常工作

我想通过REST API使用findById函数。 我把“ID”定义为所有由数字构成的string。 我试图通过IDfind,系统似乎认出它的号码。 当ID是一个大于“9007199254740992”的整数时,我不能使用它。 我想使用ID就像string。 请告诉我如何解决这个问题。 谢谢, – 跟进 – 我的程序如下。 Model – sample-model.json { "name": "SampleModel", "base": "PersistedModel", "idInjection": true, "properties": { "id": { "type": "string", "id": "true", "required": true, "doc": "MODEL ID" }, "prop1": { "type": "string", "required": true } }, "validations": [], "relations": {}, "acls": [], "methods": [] } 当我通过REST API访问findById函数时,我总是得到以下debugging消息。 […]

在环回中写保护属性

我有一个types为json的有效载荷的模型。 content.json … "properties": { "payload": { "type": "object", "required": true } }, … 我想在updateAttributes被调用时保护它的一部分不被覆盖。 Content.beforeRemote('prototype.updateAttributes', function (ctx, unused, next) { if (ctx.instance && ctx.instance.contentTypeId === 'folder') { // TODO: Do not allow direct modification of the folder items (should use exposed API). // Strip writes to payload.items and payload.itemIds } next(); }); 达到这个目标的最好方法是什么? 也不 […]

如何在node / loopback中同步调用model.find方法?

我正在使用自定义模型,并尝试使用find方法在循环中对其进行过滤。 例如下面给出 for i = 0 to n { var u = User.find( where { name: 'john'}); } 它不起作用。 另外,如果我使用以下 for i = 0 to n { User.find( where { name: 'john'}, function(u) {… } ); // How do I call the code for further processing? } 有没有办法同步调用查找方法? 请帮忙。 谢谢

unit testingExpress / Loopback中间件,无需启动服务器

有没有一种方法来unit testingExpress / Loopback中间件,而不需要实际创build服务器和侦听端口? 我的问题是,在我的testing代码中创build多个服务器将引入端口冲突的问题。

在Loopback中使用应用程序模型

在Loopback应用程序中,提到了一个内置的应用程序模型。 该页面显示 “包含客户端应用程序的元数据,这些客户端应用程序具有自己的标识以及与LoopBack服务器的关联configuration。 点击引用页面时,会进一步阐述: 应用程序模型 使用应用程序模型来pipe理客户端应用程序并组织其用户。 LoopBack存储库中的默认模型定义文件是common / models / application.json 。 该段落中的第一个链接我认为是不正确的,因为它指的是Express应用程序包装,而不是模型的一个实例。 第二个链接详细说明模型的属性。 有提到的东西,如所有权,领域(这是在用户的上下文中提到),以及其他各种设置。 应用程序模型在文档中的一些地方被提到,但是它并没有真正解释如何使用它。 你将如何访问应用程序中的应用程序模型? 你的应用中定义的所有属性在哪里? 你可以有多个应用程序实例,为什么? 希望这不是一个主观的话题,我真的只是在关于这个话题的更好的文档之后。

如何使用环回在浏览器中设置cookie?

我刚开始使用loopback开发,我只想知道如何在浏览器中使用loopback设置cookie。 人们可以通过在标题中设置cookie来在cookie的expression框架中发送cookie,然后再访问它。 response.writeHead(200, { 'Set-Cookie': 'mycookie=test', 'Content-Type': 'text/plain' }); 那么如何做到这一点与回送响应。 谢谢。

JS对象尝试访问Loopback相关的模型查询时出现奇怪的行为

我正在使用Loopback Framework,做一个web项目。 但是我认为我在这里公开的这个问题与这个问题有关,但是有一般的Javascript / Node.JS知识。 在代码的一部分,我正在做: roleMapping.find({ where: { principalType: 'USER', principalId: context.principals[0].id }, include: 'role' }, function(err, roles){ console.log(roles[0]); for (var i in roles) { if (roles[i].role.name === 'teamLeader' && roles[i].groupId === context.modelId) { cb(null,true); }else { cb(null,false); } } }); 确定与此,但它尝试比较roles[i].role.name 。 所以,我去logging什么roles[i]对象包含。 { groupId: 1, id: 3, principalType: 'USER', principalId: 1, roleId: […]

无法迁移未附加到此数据源的模型

试图使用server.js中的代码从模型创build表: app.datasources['Billing'].automigrate(['Roles', 'Users'], function(err) { console.log(err); }); 并得到以下错误: [Error: Cannot migrate models not attached to this datasource: Roles Users ] 事实上,我不知道节点如何可以在MySQL数据库中创build表,但是这个解决scheme是在手册中提供的。 可能有人有关于这个问题的良好文档的链接。

在Loopback中从自定义方法访问其他模型的方法

我正在尝试在Loopback中为基于用户的模型创build自定义方法。 该方法调用login,然后检索用户的angular色,并将其添加到响应中,以便login请求同时保存令牌和angular色信息。 我的问题是,一旦我有令牌信息,我不知道如何调用我创build的angular色&RoleMapping方法… 我如何将这些模型添加到当前范围? 我如何从这个方法访问rootScope? 这是我做到的: module.exports = function(TiUser) { TiUser.auth = function(credentials, include, fn) { var self = this; self.login(credentials, include, function(err, token) { var role = // Here I would retrieve Role related info authInfo = { token: token, role: role }; fn(err, authInfo); }); }; TiUser.remoteMethod( 'auth', { description: 'Login method with […]