Вернуться   Форум SAPE.RU > Система SAPE.ru > Установка кода на различные движки

-->
Ответ
 
Опции темы
Старый 31.03.2008, 20:21   #21
Новичок
 
Регистрация: 26.01.2008
Сообщений: 18
Вес репутации: 0
bublik на пути к лучшему
По умолчанию rails plugin

Написан плагин для релс

script/plugin install http://78.109.16.170/svn/plugins/active_sape

подробности можно узнать на форуме http://rubyclub.com.ua/
и высказать пожелания
bublik вне форума   Ответить с цитированием
Старый 31.03.2008, 20:23   #22
Новичок
 
Регистрация: 26.01.2008
Сообщений: 18
Вес репутации: 0
bublik на пути к лучшему
По умолчанию rails plugin for sape

Написали плагин для рельсов
PHP код:
[wr@bublik tt]$ script/plugin install http://78.109.16.170/svn/plugins/active_sape --force
svn'/home/wr/tmp/tt/vendor/plugins' is not a working copy
+ ./MIT-LICENSE
+ ./README
+ ./Rakefile
+ ./init.rb
+ ./install.rb
+ ./lib/active_sape.rb
+ ./lib/php_serialize.rb
+ ./sape.yml
+ ./tasks/active_sape_tasks.rake
+ ./test/active_sape_test.rb
+ ./uninstall.rb
[wr@bublik tt]$ 
подробности на форуме http://rubyclub.com.ua/
bublik вне форума   Ответить с цитированием
Старый 04.06.2008, 23:31   #23
Новичок
 
Регистрация: 26.02.2007
Сообщений: 28
Вес репутации: 0
ooprizrakoo нам пока неизвестен
Отправить сообщение для ooprizrakoo с помощью ICQ
Arrow Разработан модуль Sape для сайтов на Ruby / Ruby on Rails.

Доброго всем.

Дмитрий Роот, ведущий программист проекта "Диптаун" ( www.deeptown.org ), написал полноценный модуль для отображения ссылок Sape для сайтов, работающих на Ruby on Rails (и не только).

1. Информация.

Данный модуль портирован из "официального" perl-модуля sape.

Модуль в первую очередь предназначен для использования с фреймворком Ruby on Rails, но его можно использовать и в обычном CGI приложении. В отличии от существующих на данный момент решений, этот модуль полностью написан на Ruby и не требует запуска PHP приложения. Это должно работать значительно быстрее.


2. Быстрый старт на Ruby on Rails

- поместите файл sape.rb в директорию /lib Вашего проекта;
- в корне проекта создайте каталог sape, в нем - подкаталог с идентификатором пользователя sape (длинное шестнадцатеричное число) и убедитесь, что сервер имеет право записи в этот каталог. В нем будет храниться кеш ссылок;
- в app/controllers/application.rb (в класс ApplicationController) добавьте
следующий код:

before_filter :sape_init

def sape_init
@sape = Sape.from_request('123abc...идентификатор пользователя', request)
end

Первый параметр функции from_request - это тот же идентификатор пользователя sape. Для чистоты кода его стоит вынести в файл конфигурации;
- в ERB-шаблоне в том месте, где должны выводиться ссылки (скорее всего это будет шаблон из layouts) вставьте код
<%= @sape.links %>

Эта функция также может принимать в качестве параметра количество ссылок для отображения, например
<%= @sape.links(3) %>

По-умолчанию выводятся все оставшиеся в очереди ссылки. По правилам sape, последний вызов этой функции должен быть без параметров (чтобы гарантировать, что все необходимые ссылки отображены). За дополнительной информацией обращайтесь к руководствам sape.

В случае, если возникнет какая-то ошибка, ее описание будет отображено в виде HTML-комментария в том месте, где должны быть ссылки.


3. Список функций

Модуль экспортирует единственный класс - Sape - который отвечает за отображение ссылок sape и обновление списка этих ссылок с сервера sape.

Его использование состоит из двух этапов - инициализация и получение текста ссылок.

Инициализация производится одним из двух конструкторов:
- Sape.from_env(user_id, [options])
- Sape.from_request(user_id, request, [options])

Первый параметр обоих методов - это идентификатор пользователя sape.

Метод from_env инициализирует объект при помощи переменных среды, устанавливаемых сервером. Он предназначен для использования в CGI приложениях.

Для Rails предпочтительнее использовать второй метод - from_request, который вторым параметром принимает объект AbstractRequest.

Последний параметр - это необязательный хеш опций, которые могут включать:
:host -- имя хоста (например, myserver.com)
:uri -- URI запроса (например, /some/script.rb)
:remote_ip -- IP адрес, с которого произведен запрос;
:filename -- имя файла кеша ссылок. Этот файл должен быть доступен для записи скриптом.

Умолчания:
- для Rails - "#{RAILS_ROOT}/sape/#{user_id}/links.db"
- для CGI - "#{ENV['DOCUMENT_ROOT']}/#{user_id}/links.db"
:charset -- кодировка, в которой требуется отображать ссылки. По-умолчанию, utf-8;
:server -- адрес сервера sape, с которого обновлять ссылки;
:timeout -- период обновления ссылок в секундах (по-умолчанию 1 час).

Вы также можете указать nil - в этом случае ссылки не будут автоматически обновляться с сервера. См. ниже.

За отображение ссылок отвечают два метода:
- links( [count] )
- get_links( [count] )

Оба метода принимают в качестве параметра количество ссылок для отображения и возвращают HTML-текст ссылок. Параметр не является обязательным; по-умолчанию возвращаются все ссылки.

Отличие этих функций заключается в способе обработки ошибок.

Функция links в случае возникновения ошибки возвращает текст HTML-комментария следующего вида:
<!-- SAPE.ru error: ... error description ... -->

Функция get_links в случае возникновения ошибки кидает исключение.


4. Ручное обновление ссылок

При использовании sape существует одна небольшая проблема. Она заключается в том, что обновление ссылок с сервера sape - это долгая процедура. Сервер sape может быть перегружен или недоступен по каким-то причинам; в этом случае обновление кеша ссылок может затянуться на несколько секунд (до срабатывания таймаута соединения).

Если такое поведение недопустимо - можно обновлять кеш ссылок вручную, т.е. отдельным скриптом.

Чтобы отключить автоматическое обновление, передайте параметр :timeout => nil в последнем параметре конструктора, например:
@sape = Sape.from_request(SAPE_USER_ID, request, :timeout => nil)

Обновить ссылки вручную можно вызовом метода update() класса Sape.

Осталось только написать небольшой скрипт, который будет создавать объект Sape и вызвать его метод update, и добавить этот скрипт в расписание cron (например, в /etc/cron/cron.hourly).


5. Информация об авторе

Автор модуля - Дмитрий Роот
E-mail адрес droot@deeptown.org

Пожалуйста, сообщайте обо всех ошибках и дополнениях на данный e-mail адрес.

6. Если кто-то захочет каким-то материальным способом поблагодарить разработчика, это можно сделать переводом любой суммы на Webmoney-кошелек: Z819056126132 , или зарегистрировавшись в системе по ссылке: http://www.sape.ru/r.2f99c56437.php.

Наш модуль распространяется бесплатно, по принципу "As Is" ("как есть"), его работоспособность успешно протестирована, и он работает на нескольких RoR-сайтах.

Сам файл модуля, а так же файл readme.txt с инструкцией по установке, и файл READMEUTF8 (в кодировке UTF-8) находятся в аттаче.

Удачи и успеха, кому пригодится.
Вложения
Тип файла: zip sape_ruby.zip (7.3 Кб, 39 просмотров)
ooprizrakoo вне форума   Ответить с цитированием
Старый 05.06.2008, 00:33   #24
Червечок ползет в никуда.
 
Аватар для Chervechok
 
Регистрация: 08.01.2008
Сообщений: 2,071
Вес репутации: 317
Chervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущееChervechok - прекрасное будущее
По умолчанию

если не секрет Ruby on Rails это что такое? кмс, или на нем создавать приложения как на асп?.. хоть напишите...
Chervechok вне форума   Ответить с цитированием
Старый 05.06.2008, 00:42   #25
Специалист
 
Аватар для Xenos
 
Регистрация: 25.09.2007
Адрес: Минск, Беларусь
Сообщений: 404
Вес репутации: 213
Xenos - очень-очень хороший человекXenos - очень-очень хороший человекXenos - очень-очень хороший человекXenos - очень-очень хороший человек
По умолчанию

Цитата:
Сообщение от poolk Посмотреть сообщение
если не секрет Ruby on Rails это что такое? кмс, или на нем создавать приложения как на асп?.. хоть напишите...
Это модная технология программирования сложных проектов на Java под инет.
Xenos вне форума   Ответить с цитированием
Старый 05.06.2008, 00:45   #26
Новичок
 
Регистрация: 26.02.2007
Сообщений: 28
Вес репутации: 0
ooprizrakoo нам пока неизвестен
Отправить сообщение для ooprizrakoo с помощью ICQ
По умолчанию

Ruby on Rails - фреймворк на языке Ruby.
Позволяет создавать сложные системы за короткое время.
http://ru.wikipedia.org/wiki/Ruby_on_Rails

Текущая версия RoR - 2.1
ooprizrakoo вне форума   Ответить с цитированием
Старый 05.06.2008, 09:23   #27
Новичок
 
Регистрация: 05.06.2008
Сообщений: 2
Вес репутации: 0
vestel на пути к лучшему
Отправить сообщение для vestel с помощью ICQ
По умолчанию

Спасибо, когда его можно ждать его в виде plugin?
vestel вне форума   Ответить с цитированием
Старый 05.06.2008, 12:29   #28
Новичок
 
Регистрация: 26.02.2007
Сообщений: 28
Вес репутации: 0
ooprizrakoo нам пока неизвестен
Отправить сообщение для ooprizrakoo с помощью ICQ
По умолчанию

Цитата:
Сообщение от vestel Посмотреть сообщение
Спасибо, когда его можно ждать его в виде plugin?
vestel, удивляете меня Неужели то что есть нуждается в упрощении? )) Любой человек прикрутит этот модуль за 10 минут к сайту
ooprizrakoo вне форума   Ответить с цитированием
Старый 05.06.2008, 13:09   #29
Новичок
 
Регистрация: 26.01.2008
Сообщений: 18
Вес репутации: 0
bublik на пути к лучшему
По умолчанию

Цитата:
Сообщение от vestel Посмотреть сообщение
Спасибо, когда его можно ждать его в виде plugin?
http://forum.sape.ru/showthread.php?...ighlight=rails
вот уже готовый в виде длагина
bublik вне форума   Ответить с цитированием
Старый 05.06.2008, 13:19   #30
Новичок
 
Регистрация: 05.06.2008
Сообщений: 2
Вес репутации: 0
vestel на пути к лучшему
Отправить сообщение для vestel с помощью ICQ
По умолчанию

Все элементарно, мне просто надо было увидеть на таком простом примере, как pluginы пишутся
vestel вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка кода на DLE gapon Установка кода на различные движки 2423 04.10.2012 12:43
Установка кода morphru Вопросы от новичков 5 29.05.2008 11:13
Установка кода на by.ru paulg Установка кода на различные движки 1 27.01.2008 03:52
Установка кода romkin Ошибки при работе с системой 2 19.01.2008 20:13
Установка кода на IPB 2.X.X V!rus Ошибки при работе с системой 4 29.08.2007 20:38


Часовой пояс GMT +3, время: 04:15.