Страница 1 из 1
PostgreSQL+PostGIS - счетчик запросов об объекте
Добавлено: 01 окт 2009, 11:35
arzobispo
Всем привет!
Вот тут задался сегодня таким вопросом, пока токо думаю Как его реализовать, может кто-нибудь сталкивался.
Суть: есть некая учебная карта (связка: MapServer+PostgreSQL+PostGIS), карта работает, в принципе нравится, умная уже, но вот хочу ее улучшить следующим моментом, чтобы при кликании мышкой по какому-либо объекту выводилась не токо инфа об этом объекте, а также показывалось
какое количество раз кликали этот объект. Т.е. это получается довесок вот к этой статье
http://gis-lab.info/qa/mapserver-begin.html#13 . Вот теперь сижу и чешу репу

Re: PostgreSQL+PostGIS - счетчик запросов об объекте
Добавлено: 01 окт 2009, 13:45
KolesovDmitry
arzobispo писал(а):
Суть: есть некая учебная карта ... хочу ее улучшить ... чтобы при кликании мышкой по какому-либо объекту выводилась не токо инфа об этом объекте, а также показывалось какое количество раз кликали этот объект
Попробуй переложить это на уровень базы: т.е. пусть подсчет выборок делает PostgreSQL. В общих чертах, идея следующая (признаюсь, что сам так делать не пробовал):
1) Добавляешь к таблице еще одну колонку - счетчик ссылок
2) Закрываешь доступ к таблице, создав VIEW, в котором будет выбраны поля, кторые тебе нужны, плюс поле счетчика ссылок.
3) Создаешь правило для этого VIEW на SELECT, в котором ты прописываешь, что нужно:
- a) выбрать интересующие строки таблицы
b) увеличить счетчик ссылок у этих строк
c) вернуть выбранные строки пользователю
(Нужно описать эту логику в отдельной функции и вызывать ее из правила)
Re: PostgreSQL+PostGIS - счетчик запросов об объекте
Добавлено: 01 окт 2009, 14:02
arzobispo
KolesovDmitry писал(а):arzobispo писал(а):
Суть: есть некая учебная карта ... хочу ее улучшить ... чтобы при кликании мышкой по какому-либо объекту выводилась не токо инфа об этом объекте, а также показывалось какое количество раз кликали этот объект
Попробуй переложить это на уровень базы: т.е. пусть подсчет выборок делает PostgreSQL. В общих чертах, идея следующая (признаюсь, что сам так делать не пробовал):
1) Добавляешь к таблице еще одну колонку - счетчик ссылок
2) Закрываешь доступ к таблице, создав VIEW, в котором будет выбраны поля, кторые тебе нужны, плюс поле счетчика ссылок.
3) Создаешь правило для этого VIEW на SELECT, в котором ты прописываешь, что нужно:
- a) выбрать интересующие строки таблицы
b) увеличить счетчик ссылок у этих строк
c) вернуть выбранные строки пользователю
(Нужно описать эту логику в отдельной функции и вызывать ее из правила)
Т.е. в мар-файле, вместо SELECT пишу VIEW и там соображаю запрос?