Maison > interface Web > js tutoriel > Node.js se connecte à la base de données mongoDB pour créer rapidement votre propre service Web_node.js

Node.js se connecte à la base de données mongoDB pour créer rapidement votre propre service Web_node.js

WBOY
Libérer: 2016-05-16 15:05:05
original
1873 Les gens l'ont consulté

1. Écrivez devant

Tout le monde veut devenir un codeur full-stack. En tant que développeur web front-end, le moyen le plus simple d'obtenir du full-stack semble être node.js. J'ai appris node.js il y a quelque temps et parlons de la façon dont les novices peuvent rapidement créer leurs propres services Web et se lancer dans l'aventure full-stack.

2. Installez node.js

Quiconque a été exposé au développement back-end sait que le service doit être installé en premier. En tant que novice, vous devez choisir l'installation visuelle la plus simple (la prochaine étape est infaillible, d'autres méthodes viendront naturellement une fois familiarisé avec les opérations concernées), via le site officiel http://nodejs.org/ dist/v0.6.1/node-v0.6.1.msi Téléchargez le package d'installation adapté à l'ordinateur (c'est pour Windows, je n'ai pas les moyens d'acheter un mac), puis installez-le en fonction du démarrage. il est installé sous le fichier C:Program Filesnodejs et ajoutez ce répertoire à la variable d'environnement PATH. Pour ce faire, cliquez avec le bouton droit sur "Poste de travail" - "Propriétés" - "Système avancé" - "Avancé" - "Variables d'environnement" - sélectionnez "Nom de la variable : PATH" ; "Modifier la valeur : Ajouter [C:Program" ; end Filesnodejs] (en fonction de votre propre répertoire d'installation)". Ouvrez cmd et exécutez la commande directement :

node -v peut afficher le numéro de version actuel. npm a été intégré dans le fichier de nœud, puis utilisez npm install XXX pour installer les plug-ins ou modules requis.

3. Utiliser le framework express

Après avoir travaillé pendant un moment, j'ai finalement utilisé la commande npm pour initialiser, installer le framework express, puis écrire hello world. Pourquoi devriez-vous choisir le framework express ? Bien sûr, il a ses particularités. La plus grande crainte des novices est qu'il est difficile et facile de faire des erreurs. Bien sûr, express a pris cela en considération pour nous, il fournit donc un générateur rapide : express-generator

1. Utilisez la commande : npm install express-generator -g pour l'installer globalement

2. Utilisez la commande express pour générer la structure du projet

exprimez myapp où myapp est le nom de votre projet

3. Entrez le fichier du projet via cd myapp

Initialiser les modules dépendants via npm install

Démarrez le serveur Web via set DEBUG=myapp & npm start

4. Ouvrez l'URL http://localhost:3000/ dans le navigateur pour voir l'application.

Le moteur de template utilisé par défaut est jade, et ce modèle a été configuré dans le projet.

4. Présentation du projet de générateur express

1. L'organisation du projet myapp est la suivante :

2. package.json On peut dire qu'il s'agit du package de gestion du module, des informations sur le projet et du numéro de version du module. En fait, vous constaterez qu'il est généré par la configuration ici lorsque le module du projet est initialisé.

3. app.js est le fichier de démarrage du projet, qui peut être considéré comme le cœur du projet. Écrivez principalement quelques fonctions publiques.

4. Il y a un fichier www sans suffixe sous le fichier bin. Il s'agit du fichier d'entrée du projet et configure le port du service Web et certains événements de surveillance.

5. node_modules est le module de fichier dont dépend le projet, et les packages importés ultérieurement y seront également placés, comme le module mongoose qui se connecte à la base de données, qui sera discuté en détail plus tard.

6. Public est l'ensemble de fichiers de ressources statiques du projet. Il est facile de voir que les images, les fichiers CSS et les fichiers js sont placés ici.

7. Routes est le module de routage du projet, dans lequel les fichiers index.js et user.js sont déjà par défaut. En fait, cela inclut également le contenu du contrôleur dans le langage d’arrière-plan général. Bien entendu, il peut être séparé en grands projets.

8. Views est le fichier modèle du projet, qui est le moteur de modèles Jade. Ce modèle est très simple, mais il présente également de nombreux pièges. Par exemple, les exigences en matière d'espaces sont très strictes. espace ou un espace de moins, une erreur sera signalée. J'ai marché sur de nombreux pièges, en fait, ses performances ne sont pas très élevées, il est donc préférable d'utiliser ejs.

5. Installez mongoDB

1. Téléchargez également le fichier msi directement sur le site officiel (http://www.mongodb.org/downloads)

2. Passez simplement à l'étape suivante pour installer. S'il y a une valeur par défaut, laissez-la être la valeur par défaut. S'il y a un choix, sélectionnez tout.

3. Configurez ensuite les variables d'environnement, qui sont les mêmes que celles du nœud et ne seront pas décrites à nouveau, mais vous pouvez mettre l'image du milieu, hahaha...

4. L'étape suivante consiste à démarrer le service mongoDB

5. Passez la commande : mongod --dbpath f:MongoDBdata où f:MongoDBdata est le chemin de stockage du fichier. Si vous voyez les informations suivantes, cela signifie un succès

.

6. MongoDB écoute le port 27017. En même temps, ouvrez le navigateur et entrez

http://127.0.0.1:27017, vous verrez l'invite suivante :

 Il semble que vous essayez d'accéder à MongoDB via HTTP sur le port du pilote natif.

7. Ensuite, ouvrez un cmd et entrez la commande mongo pour vous connecter à la base de données. L'invite suivante apparaîtra :

 2015-05-02T17:10:19.467+0800 I CONTROL Hotfix KB2731284 ou une mise à jour ultérieure n'est pas installée, mettra à zéro les fichiers de données version du shell MongoDB : 3.0.2 en se connectant à : test

8. De cette façon, monogDB dans l'environnement Windows est installé avec succès.

Supplément :

9. Si vous trouvez difficile d'utiliser une commande pour ouvrir le service à chaque fois, vous pouvez écrire un fichier batch, c'est-à-dire créer un nouveau fichier avec le suffixe .bat et écrire le code suivant :

start mongod --dbpath F:MongoDBdata

10. Bien sûr, vous pouvez également démarrer MongoDB en tant que service, mais je pense que ce n'est pas très utile dans le processus d'apprentissage. Si nécessaire, je me rattraperai plus tard.

11. Si vous trouvez la ligne de commande difficile à utiliser, je vous conseille un logiciel avec une interface graphique : MongoVUE, qui est similaire à navicat. Il a une version gratuite, qui a moins de fonctions, mais c'est suffisant pour l'apprentissage. processus

6. Utiliser monogDB dans les projets de nœuds

1. Importez le module de connexion monogDB. Express introduit officiellement le module mongoskin Je n'entrerai pas dans les détails de l'installation via mongoose

.

2. Exécutez la commande npm install mongoose -save sous le projet myapp pour enregistrer l'installation dans node_modules. Vous pouvez également configurer "mongoose": "^4.4.12" dans package.json, puis commander npm install pour installer. .

3. Dans le fichier app.js

a. Importez le module mangouste :

var mangouste = require('mangouste');
b. Créer une connexion à la base de données

mongoose.connect('mongodb://localhost/myDB') //Se connecter à la base de données locale
4. Créez un nouveau schéma de dossier dans le répertoire racine du projet. Il s'agit du module d'ensemble de données. Créez un nouveau fichier users.js sous le module
.

var mongoose = require('mongoose');

//申明一个mongoons对象
var UsersSchema = new mongoose.Schema({
 name: String,
 paw: String,
 meta: { 
  createAt: {
   type: Date,
   default: Date.now()
  },
  updateAt: {
   type: Date,
   default: Date.now()
  }
 }
})

//每次执行都会调用,时间更新操作
UsersSchema.pre('save', function(next) {
 if(this.isNew) {
  this.meta.createAt = this.meta.updateAt = Date.now();
 }else {
  this.meta.updateAt = Date.now();
 }

 next();
})

//查询的静态方法
UsersSchema.statics = {
 fetch: function(cb) { //查询所有数据
  return this
   .find()
   .sort('meta.updateAt') //排序
   .exec(cb) //回调
 },
 findById: function(id, cb) { //根据id查询单条数据
  return this
   .findOne({_id: id})   
   .exec(cb)
 }
}

//暴露出去的方法
module.exports = UsersSchema 
Copier après la connexion

5. Ajoutez le fichier modules dans le répertoire racine. Il s'agit du module de modèle de données. Ajoutez le fichier users.js sous le module

.
 var mongoose = require('mongoose')
 var UsersSchema = require('../schemas/users') //拿到导出的数据集模块
 var Users = mongoose.model('Users', UsersSchema) // 编译生成Movie 模型
 
 module.exports = Users
Copier après la connexion

6. Ajoutez le code du contrôleur de routage au fichier users.js dans le fichier routes

var express = require('express');
var mongoose = require('mongoose');//导入mongoose模块

var Users = require('../models/users');//导入模型数据模块

var router = express.Router();

/* GET users listing. */
router.get('/', function(req, res, next) {
 res.send('respond with a resource');
});

//查询所有用户数据
router.get('/users', function(req, res, next) {
 Users.fetch(function(err, users) {
  if(err) {
   console.log(err);
  }  
  res.render('users',{title: '用户列表', users: users}) //这里也可以json的格式直接返回数据res.json({data: users});
 })
})
module.exports = router;

Copier après la connexion

7. Ajoutez users.jade sous le fichier de vues

extends layout

block content
 h1= title //jade取值方式
 ul
 each user in users //jade模版的遍历方式
  li
  h4 #{user.name} 
  span #{user.paw}
Copier après la connexion


8. Enfin, ouvrez l'URL dans le navigateur : http://localhost:3000/users/users pour vérifier l'effet. À ce stade, un projet allant de la base de données à l'affichage frontal est terminé.

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal