我想做什么:有一个html表单,里面有文件输入.选择文件时,文件输入应上传文件,并获取文件ID,因此在提交表单时,文件ID将与表单一起发布并写入数据库.
更短的版本:我想用我的文件存储元数据(例如id).
听起来很简单,但我很难在LoopBack中做到这一点.
已经有一对夫妇的谈话(1,2)这个话题,既不似乎导致一个解决方案,所以我想这可能是找到一个一劳永逸的好地方.
最简单的解决方案是使用模型关系,但LoopBack不支持与文件存储服务的关系.凹凸.因此我们必须使用以File示例命名的persistedmodel ,并覆盖默认的create,delete,以便从我命名的文件存储模型中保存和删除Storage.
到目前为止我的设置:
name 和sizeurlobjectIdcreate因此可以先保存文件,然后将url其注入File.create()我在那里,根据这个LoopBack页面,我有ctx,里面应该有文件:
File.beforeRemote('create', function(ctx, affectedModelInstance, next) {})`
Run Code Online (Sandbox Code Playgroud)
什么ctx?
ctx.req:Express Request对象.
ctx.result:快速响应对象.
好的,所以现在我在Express页面上,非常迷失,这就是一个关于'正在解析的中间件'的东西,我不知道它可能是什么.
我觉得我很接近解决方案,任何帮助将不胜感激.这种方法对吗?
如何在strongloop的loopback.io中删除模型?
我见过somewhere命令 persistedModel.destroy()
但是当我表现出来的时候 slc persistedModel.destroy()
我得到命令未找到错误.
我看到LoopBack内置了Express 3.x中间件.确实,身体解析器在loopback/node_modules.但我无法弄清楚如何将其用作中间件.我从未使用Express 3.x,所以也许就是这样.require显然,除非我在我的项目中安装body-parser作为依赖项,否则它不起作用.
我该怎么做server.js才能使用body-parser来解析web表单req.params?这就是它的作用,对吧?
我们拥有可货币化的移动应用程序理念,并将构建我们的第一个移动混合应用程序.
我调查了几件事并想出要实现我的端到端目标,我需要:
前端UI框架:可能的选项:Ionic/AngularGap [但文档似乎解析].
然后我认为我们需要将PhoneGap用于各种平台.
有一个BackEnd框架 - Loopback/Parse
我还没有查看具体的文档,但如果路径正确,那么有经验的建议会非常有帮助.
我现在还不知道:
答:我的想法是对的,我该怎么做.
B. Ionic是一个UI框架,如何将其与Phonegap连接,如何访问本机功能.我想我必须用angular来调用Phonegap apis?
C.如果我设置了前端部分,如何将后端apis称为环回的api?通过REST调用?或者还有其他更有效的方法吗?
有没有更简单的方法来实现这一目标?
如何确保环回模型中特定字段的唯一性.下面是模型Post,我在其中有一个字段genericId,我希望它在数据库中是唯一的,并且在重复键插入时循环到错误.
{
"name": "Post",
"plural": "Post",
"base": "PersistedModel",
"properties": {
"genericId": {
"type": "string",
"required":True
},
"moderatedAt": {
"type": "date"
}
},
"validations": [],
"acls": [],
"methods": []
}
Run Code Online (Sandbox Code Playgroud)
我试过在那里搜索文档和其他示例但没有成功.我能想到的一个解决方案是,为create函数创建一个remoteHook,并在插入之前验证这个字段,但是寻找其他方法.
当我使用以下命令在strongloop中创建模型时:
slc loopback:model
Run Code Online (Sandbox Code Playgroud)
loopback要求我在普通模型或服务器之间进行选择.
只有普通型号或服务器?
我真的不知道在一个选项或另一个选项之间选择要考虑的标准.如果你们中的任何人能够帮助我理解或给我任何见解以做出明智的决定,我将感激不尽.
Loopback有两个区域,为静态文件设置路径:
server.js
var path = require('path');
app.use(loopback.static(path.resolve(__dirname, '../client')));
Run Code Online (Sandbox Code Playgroud)
middleware.json
"files": {
"loopback#static": {
"params": "$!../client"
}
},
Run Code Online (Sandbox Code Playgroud)
在我的开发环境中,我还想引用另一个目录 /node_modules
我该怎么做呢?
我试图使用Strongloop与MySql,但无法弄清楚如何迁移或自动创建表到MySql数据库.
是否至少有一种方法可以将模型导出到MySql模式中,还是必须手动创建表格?
我一直在尝试使用mysql演示应用程序,并查看文档一段时间但没有运气 - http://docs.strongloop.com/display/DOC/MySQL+connector
谢谢!
我们在REST API中使用Strongloop的LoopBack,并希望修改LoopBack Explorer的CSS.但是,目前尚不清楚使用哪些CSS文件(LoopBack vs Swagger)以及它们的位置.我无法为此找到具体的文档.
在Nodejs中使用Soap模块(通过loopback-connector-soap),我正在尝试将json转换为xml以获取我的soap请求,但是我遇到了一些问题......
这是什么:
<ns:UserDefinedFields>
<ns:UserDefinedField>
<ns:displayName>Campaign?</ns:displayName>
<ns:fieldValue>Yes</ns:fieldValue>
</ns:UserDefinedField>
</ns:UserDefinedFields>
<ns:UserDefinedFields>
<ns:UserDefinedField>
<ns:displayName>Anticipated Use</ns:displayName>
<ns:fieldValue>6</ns:fieldValue>
</ns:UserDefinedField>
Run Code Online (Sandbox Code Playgroud)
应该是什么:
<ns:UserDefinedFields>
<ns:UserDefinedField>
<base:displayName>Campaign?</base:displayName>
<base:fieldValue>Yes</base:fieldValue>
</ns:UserDefinedField>
<ns:UserDefinedField>
<base:displayName>Anticipated Use</base:displayName>
<base:fieldValue>6</base:fieldValue>
</ns:UserDefinedField>
</ns:UserDefinedFields>
Run Code Online (Sandbox Code Playgroud)
<ns:UserDefinedFields><base:fieldValue>而不是<ns:fieldValue>任何建议都会非常有帮助!谢谢!
XML:
{
...
"UserDefinedFields": [
{
"displayName": "Campaign?",
"fieldValue": "Yes"
},
{
"displayName": "Anticipated Use",
"fieldValue": 6
}
]
...
}
Run Code Online (Sandbox Code Playgroud)
XSD:
...
<xs:element name="UserDefinedFields" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="UserDefinedField" type="base:UserDefinedFieldType" minOccurs="0" maxOccurs="15"/>
</xs:sequence>
</xs:complexType>
</xs:element>
...
Run Code Online (Sandbox Code Playgroud) loopbackjs ×10
strongloop ×6
node.js ×5
javascript ×2
json ×2
angularjs ×1
body-parser ×1
cordova ×1
css ×1
express ×1
middleware ×1
mysql ×1
schema ×1
soap ×1