Где-то ошиблись, по всей видимости. Телепатин закончился.
Именно так. http://dailyjs.com/2012/01/26/effective-node-modules/
Потому что функция pool.query у вас выполняется ОДИН раз, далее все время берутся данные из переменной data.
Попробуйте для сравнения так:
/* GET home page. */
router.get('/', function(req, res, next) {
pool.query('SELECT * FROM `table` ', function(err, rows, fields) {
if (!err) {
var data = {data: rows};
res.render('index', data);
}
else {
log.error('Error while performing Query.' + err);
});
Не очень понятно, что значит "глобальным". Инициализация подключения к базе выполняется в главном модуле, где у вас роутинг. А далее эта переменная доступна в замыканиях, т.е.
var express = require("express");
var mysql = require('mysql');
var pool = mysql.createPool({
connectionLimit : 10,
host : 'example.org',
user : 'bob',
password : 'secret'
var app = express();
app.get("/",function(req,res){
pool.query(...);
app.listen(8000);
Который из них? В этом же рабочем каталоге, команда git --version что выдаёт?
Если этот модуль, то он умеет
Есть еще полезная функция fastcgi_finish_request для запуска фоновых задач.
Иногда выдает "автоматическое обновление не удалось" и висит плашечка без всяких уведомлений на почту. Лучше проверить.
Базы данных поддерживают всякие Geo расширения. Подобные выборки будут делаться одним SQL запросом.
См. http://postgis.net/
https://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html
Если радиус небольшой, координат немного (поиск без индекса), большая точность не требуется (кривизной земной поверхности можно пренебречь) - можете вспомнить школьный курс геометрии про синусы и косинусы :)
В <head> добавьте тэг <base>, на основании которого будут рассчитываться полные URL по относительным. Таким образом, относительные пути в документе не поменяются.