小编Vla*_*lad的帖子

使用动态键推送到 mongodb 数组

我正在尝试通过动态键推送数据

数据库结构:

{
    "obj1":{
      "array":[
       {
        "field1":"text1"
       },
       {
        "field2":"text2"
       }
      ]
    },
    "id":123;
 },
 {
    "obj2":{
      "array":[
       {
        "field1":"text1"
       },
       {
        "field2":"text2"
       }
      ]
    },
    "id":1234;
 }
Run Code Online (Sandbox Code Playgroud)

我尝试使用变量作为地图路径中的键:

var a = 'obj2';
db.collection('fooCollection').update({'id':1234},{$push:{a.array:{  "field3":"text3"}}});
Run Code Online (Sandbox Code Playgroud)

如果我做:

db.collection('fooCollection').update({'id':1234},{$push:{"obj2.array":{ "field3":"text3"}}});
Run Code Online (Sandbox Code Playgroud)

它有效,但我非常需要使用动态密钥。

javascript mongodb node.js express

4
推荐指数
1
解决办法
1911
查看次数

Jenkins"将节点和npm bin /文件夹提供给PATH"为空

我安装了Jenkins,添加了我的repo,还安装了NodeJS插件.但是在构建环境>提供节点和npm bin /文件夹到PATH我有空的下拉列表.

图片

(使用https://strongloop.com/strongblog/roll-your-own-node-js-ci-server-with-jenkins-part-2/ tutorial)结果詹金斯粉碎了

ERROR: Build step failed with exception
java.lang.IllegalArgumentException: NodeJS Installation not found : 
    at jenkins.plugins.nodejs.NodeJSPlugin.findInstallationByName(NodeJSPlugin.java:42)
    at jenkins.plugins.nodejs.tools.NpmPackagesBuildWrapper$2.launch(NpmPackagesBuildWrapper.java:64)
    at hudson.Launcher$ProcStarter.start(Launcher.java:381)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:95)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:64)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779)
    at hudson.model.Build$BuildExecution.build(Build.java:205)
    at hudson.model.Build$BuildExecution.doRun(Build.java:162)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
    at hudson.model.Run.execute(Run.java:1720)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:98)
    at hudson.model.Executor.run(Executor.java:404)
Build step 'Execute shell' marked build as failure
Finished: FAILURE 
Run Code Online (Sandbox Code Playgroud)

那么,怎么了?

linux continuous-integration node.js jenkins

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