Javascript 如何从另一个js文件node.js插入mongodb数据-
我现在已经在node.js和mongodb上观看并阅读了大量教程。我知道如何创建数据库、插入数据、在ejs文件上显示数据等。但是,我不知道如何从ejs文件中插入数据 例如: 我有一个Javascript 如何从另一个js文件node.js插入mongodb数据-,javascript,node.js,mongodb,ejs,Javascript,Node.js,Mongodb,Ejs,我现在已经在node.js和mongodb上观看并阅读了大量教程。我知道如何创建数据库、插入数据、在ejs文件上显示数据等。但是,我不知道如何从ejs文件中插入数据 例如: 我有一个app.js和一个mongodb.js应用程序运行我的服务器,mongodb.js创建一个数据库并插入一些数据-不是用mongoose而是用mongodb。我还有一些从mongodb.js获取数据并显示的ejs文件。这是我的mongodb.js: var mongodb = require('mongodb'); v
app.js
和一个mongodb.js
应用程序运行我的服务器,mongodb.js创建一个数据库并插入一些数据-不是用mongoose而是用mongodb。我还有一些从mongodb.js获取数据并显示的ejs文件。这是我的mongodb.js:
var mongodb = require('mongodb');
var MongoClient = mongodb.MongoClient;
var url = 'mongodb://localhost:27017/my_database_name';
exports.drinks = [
{ name: 'Manu', rate: 3 },
{ name: 'Martin', rate: 5 },
{ name: 'Bob', rate: 10 }
];
// Use connect method to connect to the Server
MongoClient.connect(url, function (err, db) {
if (err) {
console.log('Unable to connect to the mongoDB server. Error:', err);
} else {
//HURRAY!! We are connected. :)
console.log('Connection established to', url);
// Get the documents collection
var collection = db.collection('users');
// Insert some users
collection.insert(exports.drinks, function (err, result) {
if (err) {
console.log(err);
} else {
console.log('Inserted %d documents into the "users" collection. The documents inserted with "_id" are:', result.length, result);
}
console.log(collection.users.find());
//Close connection
db.close();
});
}
});
然后在我的app.js中,我有以下内容:
//index page
app.get('/', function(req, res) {
res.render('pages/index', {
drinks: drinks,
tagline: tagline
});
});
在我的ejs上:
<ul>
<% drinks.forEach(function(drink) { %>
<li><%= drink.name %> : <%= drink.rate %></li>
<% });; %>
</ul>
- :
但现在我希望能够从ejs(甚至从app.js)更新/插入数据到数据库中
例如,如果我有一个表单,我希望用户在其中键入他们的姓名,我希望该姓名保存在我的数据库中。如何执行此操作?Ejs-only模板引擎(在MVC中查看),它无法更新和插入数据库(Controller执行此操作)。您需要为获取用户数据和更新数据库创建一个路由(POST) 您的EJ没有将数据直接保存到数据库中,但应该将数据发送到node.js服务器,该服务器接收该数据并使用mongodb驱动程序api将其保存到数据库中。另一方面,你应该考虑使用MangoOSE这是一个很好的抽象,MangGDB的No.jsAn教程关于如何做到这一点。你可以阅读这个例子。