это наш химический дом для печальных жителей Земли

bing-переводчик на ruby

Уже давно гугл отказался предоставлять API к своему переводчику бесплатно, а у Яндекса, насколько я знаю, поддерживается еще мало языков и еще нет публичных API. Я знаю только 1 бесплатный аналог переводчику гугла – Bing Translator. В этой статье показана интеграция переводчика от Microsoft в Rails-приложение.
читать полностью →

sitemap на Rails 3. rails-sitemap

Писать rake-файл, который сделает sitemap самому уже давно не модно т.к. существует 2 вагона готовых гемов для этого. Ниже я немного опишу гем rails-sitemap и самое главное покажу как его заставить делать несколько карт, например, для ситуации когда у сайта локация определяется поддоменом (напр.: ru.site.com и en.site.com).
читать полностью →

Яндекс.Фотки+Carrierwave на Rails 3

Использовать свой сервер для хранения больших фото порой бывает дорого, а если вы хотите еще и хранить разные версии одного и того же изображения (например: иконка, средний размер и оригинал), то часто проделывание стольких преобразований над каждым файлом требует большого количества процессорного времени. Яндекс.Фотки предоставляет API, которые, конечно не идеальны (в смысле я бы расширил их функционал), однако, могут решить вышеуказанные проблемы. Ниже будет описано как интегрировать Яндекс.Фотки в Rails 3 через Carrierwave.
читать полностью →

определение местоположения пользователя через GeoIP на RoR 3

GeoIP позволяет определить по IP его страну и иногда даже город. Вообщем, это полезная штука, которая часто нужна сайту, особенно если он мультиязычный (или мультиязыковой).
читать полностью →

ROR 3. Devise. Управление пользователями

Сейчас мало таких сайтов, где не нужны были бы пользователи, точнее модель пользователей. Раньше, я как дурак, писал эту модель вручную, иногда, конечно, иначе и нельзя было поступить. А недавно я открыл для себя гем Devise для Rails, который в большинстве случаев избавляет от необходимости прописывать логику управления пользователями самому.
читать полностью →

rails 3 на nginx+mongrel

Некоторые люди, которым интересен iLukmus, наверняка заметили, что сайт работает, мягко говоря, нестабильно и падает по несколько раз в сутки. Я уже пробывал ставить сайт на Apache+Passenger и Nginx+Passenger, и в обоих этих вариантах ситуация с падениям web-сервера была идентичной. Вероятнее всего, я просто не умею их готовить их правильно настраивать, но проблему все равно нужно решать, а т.к. пробывать различные конфиги мне уже надоело, iLukmus переходит на Mongrel+Nginx.
читать полностью →

nginx on rails 3

Тестов я не проводил, но что-то мне подсказывает, что Nginx будет побыстрее чем Apache. В принципе, настройка Nginx через Passenger под Rails 3 похожа на аналогичную Apache’а. Но для закрепления, я все равно здесь ее опишу.
читать полностью →

rails 3. переход с sqlite3 на mysql

Существует гипотеза, что MySQL гораздо быстрее SQLite в многопользовательском приложении. Собственно, гипотеза подтверждается на всех тестах, что я видел, а также на моем собственном опыте. Подобный холивар, о том у кого длинее что быстрее можно слегкостью найти на Хабре. Весь описанный дальше процесс был проделан на Fedora 14.1 x64, однако, даю клык, что все тоже самое будет работать на федоре старше 11.
читать полностью →

ROR + Passenger + Apache

После того как рельсовое приложение более-менее готово для его коммерческой эксплуатации необходимо перейти с Webrick’а на более серьезный сервер. Лично на данный момент выбрал Apache, поэтому и запишу процесс настройки ROR + Apache.
читать полностью →

задания cron в ROR 3

Часто возникает необходимость в приложениях на рельсах запускать какие-то скрипты cron’ом. Однако, желательно не просто запустить скрипт, для этого особого ума не надо, а написать скрипт и запустить его так чтобы он использовал интерфейсы Rails т.е. ROR-методы работы с БД, короче говоря Active Records.

Способами как сделать cron-скрипт для Rails 2.x исписан весь интернет. Собственно в Rails 3.x все практически также.

Открываем какую-нибудь модель или создаем новую, пусть это будет rails_app/app/models/product.rb:

1
2
3
class Product < ActiveRecord::Base
#возможно здесь что-то есть
end

читать полностью →