05 Aug

Пару проектов на Ruby on Rails.

Добавил пару проектов на Ruby on Rails, которые я разрабатывал для изучения этого прекрасного фреймворка на странице About Us. Собственно она уже переименовалась в About Us & Projects.
В целом это 3 проекта, подробнее на самой странице. Исходный код также размещен на Github.

02 Apr

PostgreSQL и ROR 3.

После разработки нашего приложения на Ruby on Rails 3 , необходимо развернуть его на более мощном РСУБД. Одним из таких являеться PostgreSQL. Дополнительную информацию можно найти на официальном сайте и в википедии.
Собственно для перехода к дальнейшим действиям, подразуемваеться что у нас в системе установлен:
1) PostgreSQL.
2) Создан пользователь.
3) Создана таблица(Можно эксперементировать с стандартным пользователем – postgres)
Если же нет – то рекомендую обратиться на официальную страницу(для Debian – в Debian wiki), где подробнейшим образом описана установка PostgreSQL. Создание юзера и пустой базы данных можно найти в официальной документации.
И так, у нас уже установлен PostgreSQL, Ruby 1.9.2 , стандартный набор гемов, rvm, Ruby on Rails 3.
Чтоб связать Ruby и PostgreSQL, необходимо установить дополнительные пакеты,если они у нас еще не установлены: Read More

29 Jan

RedCloth для блога на Ruby on Rails.

RedCloth представляет собой плагин(gem) для добавления и отображения в постах маркеров языка разметки. Как известно при добавлении поста, текстовые данные отправляются и хранятся в базе данных. При обращении к нему контроллер посылает запрос, приходит ответ и контроллер направляет его в вид. Браузер отображает элементы текста.
Работа гема заключается в следующем. Он преобразует специально написанные разметки в различные элементы веб и передает их вместе с текстом браузеру. Пользователь получает код HTML из своего текста. Например текст написанный на простом языке разметки textile:

1
h1. Give RedCloth a try!
1
2
A *simple* paragraph with
a line break, some _emphasis_ and a "link":http://redcloth.org
1
2
3
4
* an item
<ul>
<li>and another</li>
</ul>
1
2
3
4
# one
<ol>
<li>two</li>
</ol>

Преобразуется в : Read More

01 Jan

Добавляем jQuery в наш Rails 3 проект.

Возможность добавлять плагины jQuery придает красоту и некоторую дополнительную функциональность в наш проект, делает его более привлекательным. По умолчанию в папке public/javascripts/ лежит файл javaScript библиотеки – rails.js, который генерируется rails при создании нами проекта. Он берет различные плагины с prototypejs.org. Изначально создавался для альтернативы jQuery. Но, который естественно уступает второму как по качеству, так и по количеству плагинов, удобстве их использованию и простоте. Собственно, поэтому и возникает необходимость его замены.
Для этого удаляем файлы:

1
rails.js, controls.js, dragdrop.js, effects.js и  prototype.js .

Скачиваем адаптер rails для работы с javascript c github –

1
http://github.com/rails/jquery-ujs/raw/master/src/rails.js

и библиотеку jQuery с официального сайта(на данный момент акутальна версия jquery-1.4.4.min.js).Сохраняем их в папке public/javascripts/.Добавляем в файл layout нашего проекта строчку:

<head>
<title>Blog</title>
<%= stylesheet_link_tag :all %>
<%= javascript_include_tag 'jquery-1.4.4.min', 'rails', 'application' %>
<%= csrf_meta_tag %>
</head>
19 Dec

Установка Rails 3.0.3 на Calculate Linux 10.9(Gentoo)

Сегодня мы будем устанавливать Ruby(1.8.7) и Rails 3.0.3 на Calculate Linux 10.9. Задача не сложная. Но подробных описаний этого процесса в сети я не нашел, поэтому решил запостить в блог. Благо разработчики Rails 3 все еще поддерживают Ruby 1.8.7 ибо Ruby 1.9.2 в Gentoo не стабилен.

Ищем Ruby:

biotin@calculate ~ $ emerge -S ruby

Поиск дал результаты :

Searching...
[ Results for search key : ruby ]
[ Applications found : 266 ]
*  dev-lang/ruby
Latest version available: 1.8.7_p302 nd my
Latest version installed: [ Not Installed ]
Size of files: 4,088 kB
Homepage:      http://www.ruby-lang.org/
Description:   An object-oriented scripting language
License:       || ( Ruby GPL-2 )

Логинимся под root и устанавливаем: Read More

07 Sep

XSS в Rails 3.

Много нового появилось в версии Rails 3.
Изменения коснулись буквально всех его частей, начиная с использованием новый версии ruby выше 1.8.7,  командный код (script/server), больше не приходиться возиться с конфигами gemov (включен Bundler)изменения в Action Pack, новой валидацией (новые правила написания кодов валидации), изменения в rout.rb, улучшена генерация scaffold, добавлены javascript, изменен rake и многое другое. Некоторые из них существенно не отличаются, но быстроту и эффективность написания кода явно увеличили. Одним словом, чуть облегчена жизнь разработчика. Особо переходить пока на 3 версию не рекомендуется, но поэкспериментировать с ним можно, для дальнейшего перевода своих проектов на него.
Изменена и встроенная защита от XSS-атак. А именно, если в версиях 2.3.х в файлах View нужно было не забывать дописывать:

1
 <%= h ... %>

то в Rails 3 можно смело менять его на:

1
<%= ... %>

Подробнее на картинке(кликабельна для увеличения).
А еcли же в некоторых случаях нужно вводить какой либо код, то вместо “h” нужно вписать “raw”.

04 Jul

Rails on Ubuntu, XP.

< title="rails" left Сегодня ставил ROR (Ruby on Rails) на Ubuntu и XP. Сперва ставил на XP. Проблем не возникало, да и особо не нужно было раздумывать над чем либо. Скачал InstantRails c rubyforge.org. Установил 1.2 версию. По ним написана книжка Д.Томаса и Д.Х.Хенссона “Гибкая разработка приложений в среде Rails” 2006 года. А то с новыми версиями может не сходиться. Не интересно искать ошибки или новшества в новых версиях и потом исправлять код написанный по старому учебнику, особенно если этот код не знаешь, и только изучаешь.
InstantRails маленькое приложение.Очень удобное.Левый клик по иконке I и из меню выбрав Rails aplication > Console Window попадаешь в командную строку.Было интересно еще одно новшество (для меня). При запуске стартовал специальный мини рейлс сервер Apache и база данных MySQL. В принципе больше каких либо настроек не нужно было впихивать, исправлять. Read More