χάμστερ :: :: :: ::
Feci, quod potui, faciant meliora potentes
Небольшая заметка о том, как установить коннект к mysql из express через db-mysql.
- Считаем, что установлены Node.js и npm. А так-же для установки db-mysql необходим пакет libmysqlclient-dev
- Устанавливаем Express (подробнее про установку можно посмотреть на сайте фреймвока.)
# Устанавливаем фреймворк npm install -g express # Создаем приложение в папке /var/www, переходим express /var/www cd /var/www # Устанавливаем зависимости npm install -d # Проверяем, что все работает # (запускаем, и вводим в браузере localhost:3000, выходим) node app.js
- Устанавливаем db-mysql (подробности на сайте библиотеки)
npm install db-mysql
- Создаем файл, например, /var/www/db/db.js
// Подключаем библиотеку var mysql = require('db-mysql'); // создаем объект-менеджер exports.dbm = function() { var _t = this, _log = ''; _t.config = { hostname: 'localhost', user: 'user', password: 'password', database: 'database_name' }; // Создаем объект mysql _t.db = new mysql.Database(_t.config); // Просто метод для демонстрации _t.log = function() { return _t._log; }; // создаем обертку для соединения _t.connect = function() { _t.db.connect(function(error) { if (error) { _t._log = 'CONNECTION error: ' + error; } else { _t._log = 'CONNECTION: OK'; } // пока мы просто подключаемся и отключаемся от базы: _t.db.disconnect(); return console.log(_t._log); }); }; // Возвращаем объект менеджера return _t; }
- Правим app.js:
После этого можно уже проверить, что все работает - достаточно запустить node app.js и в консоли увидим - соединились или нет. Но это неинтересно. Попробуем вывести это сообщение на страницу.// .... здесь оригинальный код. После строчек: var express = require('express'); var app = module.exports = express.createServer(); // вставляем: var dbm = require('./db/db.js').dbm(); // Получаем менеджер dbm.connect(); // коннектимся к базе
- Правим app.js:
Остается только создать новый шаблон (views/dbtest.jade)// .... здесь оригинальный код. После строчек: app.get('/', function(req, res){ res.render('index', { title: 'Express' }); }); // вставляем: app.get('/test', function(req, res){ // определяем новый путь /test res.render('dbtest', { // используем новый шаблон title: 'DB Test', db: dbm.log() // в переменную шаблона //добавляем результат соединения с сервером }); });
Запускаем node app.js и переходим по адресу: localhost:3000/testh1= title p Welcome to #{title} p DB: #{db}
В следующих заметках попробуем выполнить запросы.
Новое на сайте:
- Node.js
- PHP
- Python
- Apache и другие
- Git
- Postgres и локаль
- mysqldump с удаленного сервера
- unity ios build
- Включение и просмотр логов запросов mysql
- Could not find a valid tablespace file for 'database/#sql-*'
- JavaScript, CustomEvent, dispatchevent и jquery.on()
- rabbitmq побился индекс, когда закончилось место