Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 连接到MongoDB node.js时出错-未定义客户端_Javascript_Node.js_Mongodb - Fatal编程技术网

Javascript 连接到MongoDB node.js时出错-未定义客户端

Javascript 连接到MongoDB node.js时出错-未定义客户端,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,我似乎无法连接到我的MongoDB。以下是发生的错误: ReferenceError:未定义客户端。 在MongoClient.connect(C:/user/user/desktop/blog app.js 在args.push const express = require('express'); const bodyParser= require('body-parser') const app = express() app.use(bodyParser.urlencoded({ex

我似乎无法连接到我的MongoDB。以下是发生的错误:

ReferenceError:未定义客户端。 在MongoClient.connect(C:/user/user/desktop/blog app.js 在args.push

const express = require('express');
const bodyParser= require('body-parser')
const app = express()


app.use(bodyParser.urlencoded({extended: true}))


const MongoClient = require('mongodb').MongoClient
var db

MongoClient.connect('mongodb://user:pass@ds029466.mlab.com:29466/movie-quotes', (err, database) => {
  // ... start the server

   if (err) return console.log(err)
 db = client.db('movie-quotes')
  app.listen(process.env.PORT || 3000, () => {
    console.log('listening on 3000')
  })
})


app.get('/', (req, res) => {
  res.sendFile(__dirname + '/index.html')
  // Note: __dirname is directory that contains the JavaScript source code. Try logging it and see what you get!
  // Mine was '/Users/zellwk/Projects/demo-repos/crud-express-mongo' for this app.
})


app.post('/quotes', (req, res) => {
  db.collection('quotes').save(req.body, (err, result) => {
    if (err) return console.log(err)

    console.log('saved to database')
    res.redirect('/')
  })

})

数据库
是您的数据库客户端。你应使用:

db = database.db('movie-quotes')
而不是:

db = client.db('movie-quotes')

你是舒尔公司的吗?你有权访问那台服务器吗?是的,它正在工作。刚才有一个简短的问题,为什么本教程不使用mvc模式?我应该将所有路线都放在app.js中吗?或者我需要制作一个控制器、模型和路由文件夹?你能不能快速向我解释一下为什么有些教程使用路由、控制器模型,而有些则不使用?我有点困惑,试图理解什么是正确的方法1.这个问题似乎很广泛,但我会尽力回答。有些教程使用不同的设计模式(主要是MVC)。它根本没有与node.js或MongoDB链接,而是关于代码体系结构。您需要根据应用程序的大小和复杂性选择设计模式。因为你说它是一个基本的CRUD应用程序,所以我认为MVC设计(路由、控制器、模型)似乎是合适的,并且足以达到这个目的。那么,在app.js中编写所有代码而不使用路由和控制器文件夹,是MVC设计吗?你对我在哪里能读到更多这方面的信息有什么建议吗?谢谢这与我写的完全相反。是关于分离。因此,如果你想实现它,你不应该把它全部放在你的
app.js
中,而是像你说的那样放在不同的文件或目录中。我可以向您推荐这个存储库。