用Mysql检索上次插入的id

美好的一天, 我愿意在Mysql中检索新插入的行的id值。 我知道有mysqli_insert_id函数,但是: 我无法指定表格 如果同时进行查询,也许会有检索错误ID的风险。 我正在使用node.js MySQL 我不想冒险查询最高的ID,因为有很多的查询,它可以给我错误的… (我的ID列在自动增量)

通过mongoose将物品推入蒙戈列

我已经search了很好的一点寻找答案,但我相信我迷失了正确的话来描述我后。 基本上我有一个名为“人”的mongodb集合该集合的架构如下: people: { name: String, friends: [{firstName: String, lastName: String}] } 现在,我有一个非常基本的快速应用程序连接到数据库,并成功地创build一个空的朋友数组的“人”。 在申请的次要位置,有一个表格可以添加朋友。 表单接受firstName和lastName,然后POST名称字段也用于引用正确的人员对象。 我很难做的是创build一个新的朋友对象,然后“推”到朋友arrays。 我知道,当我通过mongo控制台执行此操作时,我使用$ push的更新函数作为查找条件后的第二个参数,但似乎无法find合适的方法让mongoose执行此操作。 db.people.update({name: "John"}, {$push: {friends: {firstName: "Harry", lastName: "Potter"}}}); 更新:所以,阿德里安的答案是非常有帮助的。 以下是我为了实现我的目标所做的。 在我的app.js文件中,我使用了一个临时路由 app.get('/addfriend', users.addFriend); 在我的users.js文件中,我有 exports.addFriend = function (req, res, next) { var friend = {"firstName": req.body.fName, "lastName": req.body.lName}; Users.findOneAndUpdate({name: req.user.name}, {$push: {friends: friend}}); };

Eclipse停留在JavaScript文件的复制/剪切上

我安装了Eclipse Kepler和NodeEclipse插件。 对于NodeEclipse的性能原因,我已经禁用JavaScript文件的内容助手。 问题:每当我在JS文件(ctrl + c / ctrl + x)中复制或剪切一些行时,CPU使用率为100%,而eclipse进程占用所有内存(> 1GB)。 我认为一些GC抖动正在发生。 增加JVM最大内存更多是一个选项,但不是1GB足够的日食? 这可能是一些内存泄漏。 这是与Nodeclipse的具体问题? 在Eclipse中有任何解决方法/设置diable? 编辑:当我双击一个variables,CPU泵到100%,3-4秒,下来。 我有标记已经disbled。 这只发生在route / *。js文件而不是公用文件夹中。 调查更多,我发现包含require('<package-name>')注释行解决了这个问题,为什么?

如何预编译handlebars.js的部分?

我正在使用handlebars.js,我想开始预编译一切,但我似乎无法find预编译部分的方法。 我的大部分模板实际上是部分。 我试图把我的他们像普通的模板,但他们称为部分不起作用。 有没有什么方法可以预编译部分,或者,可以从另一个模板中调用一个模板?

nodejs – 临时文件名称

在node.js中,如何生成一个唯一的临时文件名,la mkstemp(3) ? 我想用fs.renameprimefaces地写一个文件。

在express中使用URL中的多个参数

我正在使用Express与节点,我有一个要求,用户可以请求的URL为: http://myhost/fruit/apple/red 。 这样的请求将返回一个JSON响应。 上述调用之前的JSON数据如下所示: { "fruit": { "apple": "foo" } } 有了上面的请求,响应JSON数据应该是: { "apple": "foo", "color": "red" } 我configuration了快速路由如下: app.get('/fruit/:fruitName/:fruitColor', function(request, response) { /*return the response JSON data as above using request.params.fruitName and request.params.fruitColor to fetch the fruit apple and update its color to red*/ }); 但是这不起作用。 我不确定如何传递多个参数,也就是说,我不确定/fruit/:fruitName/:fruitColor是否是正确的方法。 是吗?

如何在Node.js中正确使用D3?

我一直试图在Node.js中调用D3。 我首先尝试从D3的网站用脚本标记导入d3.v2.js,然后阅读这个线程: 我想从Cakefile运行d3 在D3的作者build议应该'npm install d3'…我这样做,我可以在节点控制台中成功地调用它: dpc@ananda:$ node > var d3 = require("d3"); undefined > d3.version; '2.8.1' 但是,当试图从app.js中用'node app.js'调用它时,我得到: node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ TypeError: Cannot read property 'BSON' of undefined at /Users/dpc/Dropbox/sync/Business/MindfulSound/Development/nad.am/nadam/node_modules/mongoose/node_modules/mongodb/lib/mongodb/index.js:45:44 我意识到在其他地方,D3的作者已经明确指出,应该要求canvas: https://github.com/mbostock/d3/blob/master/examples/node-canvas/us-counties.js 如: var Canvas = require("canvas"); 但即使如此,(即使在app.js的require语句中特别要求使用index.js而不是d3.v2.js),我无法在Jade模板中获得以下内容: – script('/javascripts/d3.v2.js') h1 Dashboard section.css-table section.two-column […]

如何找出当前NODE_ENV的快递应用程序正在运行?

我只是想知道,如果我可以找出NODE_ENV (即开发或生产)在快速代码(所以我不能使用app.configure('production' function(){}) )目前的价值是什么。

为socket.io/nodejs进行身份validation

我有一个PHPlogin,用户放在一个用户名/密码,它检查login信息的MySQL数据库。 如果通过身份validation会话是通过PHP创build的,用户现在可以通过php会话访问系统。 我的问题是,他们一旦通过PHP /会话进行身份validation,将授权用户看看他们是否有正确的login权限访问与socket.io nodejs服务器的过程是什么? 我不想让这个人有权访问nodejs / socket.io函数/服务器,除非他们通过phplogin身份validation。

Browserify和凉亭。 规范的方法

我现在使用的软件包不能在npm中使用,现在就是这样的: package.json有: "napa": { "angular": "angular/bower-angular", "angular-animate": "angular/bower-angular-animate", "d3": "mbostock/d3", "ui-router":"angular-ui/ui-router", "bootstrap":"twbs/bootstrap" }, "scripts": { "install": "node node_modules/napa/bin/napa" 并且将文件安装到node_modules目录中,并且像这样本身使用它们 require('angular/angular') require('ui-router') … etc 这是有效的,但我在想,如果可以使用与bower一起安装的软件包(到特定的文件夹中),并将它们本身用作节点模块? 是否可以调整节点的模块分辨率,并强制它不仅在node_modules目录中查找模块,而且还在bower目录中查找模块? 或者也许使用npm link或其他? 是否有某种使用浏览器与凉亭的惯例?