Загрузка...

Ruby & Rails: веб-разработка с удовольствием

Ruby on Rails — фреймворк для создания веб-приложений. Является открытым программным обеспечением (лицензия MIT). Здесь мы обсуждаем новости RoR, делимся учебными материалами и интересными находками С RoR даже сложные веб-приложения могут быть написаны за считанные дни. Это действительно разработка с удовольствием!

Все материалы

     
17.01.11, 16:57
Автор ska

Нужно переписать сайт http://www.pentaxnews.ru/
с java на ruby. нужен опытный программист. пишите ks.seliverstova@gmail.com. срочно ищем.

11.01.11, 12:49
Автор ggg

Продолжая цикл приятных мелочей хочу поведать тем кто еще не знает конструкцию returning и освежить в памяти тех кто уже знаком с ней.

Нередко при написании rails приложения возникает потребность получить объект, что-то с ним сделать и возвратить вновь полученное значение. Это можно сделать следующим образом:

 

def change_state(object_id, new_state)
  object = find(object_id)
  object.state = new_state
  object.save
  object
end

 

С помощью констркции returning данная задача приобретает более красивый внешний вид:

 

def change_state(object_id, new_state)
  returning find(object_id) do |object|
    object.state = new_state
    object.save
  end
end

Таким образом код становится более понятным и легко читаемым.

Думаю в проекте каждого рельсовика встречались места, где нужно провести какое-то действие с объектом, но объекта может и не быть (object == nil), проверки вида

current_user && current_user.admin?

или

post && post.author == user

не очень красиво выглядят. Недавно я наткнулся на очень маленький, но безумно приятный метод try, который преобразовывает написанное выше в следующие конструкции:

current_user.try(:admin?)

post.try(:author) == user

Я думаю, что это делает код намного более красивым, при сохранении логики (для объекта nil try вернет nil, а для непустого объекта - результат выполнения инструкции). Всем, кто еще не использует данную конструкцию в своих проектах - советую обратить на нее особое внимание.

ключевые слова

При настройке Rails 3 приложения в связке с Apache + Passenger столкнулся с маленькой коварной засадой: необходимо было, чтобы одно из приложений запускалось в development-окружении, для этого раньше использовалась опция RailsEnv development, но новые рельсы не подхватывают данную настройку.

 


Читать полностью

Добрый день! 

Провожу исследование на тему «На что ориентируется заказчик при выборе 
студии веб-разработки», интересует уклон в сторону нестандартных 
решений. Прошу по возможности принять участие и написать, какие 
факторы по вашему мнению являются наиболее востребованными, опираясь 
на ваш профессиональный опыт работы с клиентами. Приведите, 
пожалуйста, несколько факторов, не больше десяти, в порядке уменьшения 
их степени значимости. 

Большое спасибо за помощь!

Параллельно пытаюсь получить ответы в группах гугла, если кому интересно вот ссылка: http://groups.google.com/group/ror2ru/browse_thread/thread/181e7f0157a1d27

С уважением, 
Иван.

07.08.10, 15:39
Автор ggg

Часто при верстке HTML-писем возникает множество проблем из-за того, что почтовые клиенты не поддерживают большинство фишек современного web-а, поэтому приходится использовать таблицы вместо div-ов, html-свойства вместо css-аттрибутов (например при задании фоновой картинки таблицы) и, что самое страшное для меня, использовать аттрибут style, вместо class.


Читать полностью

Сегодня изучая исходные коды Ruby on Rails столкнулся с такой, на мой взгляд, очень полезной штукой. Предположим, что у вас есть функция, которая может принимать на вход как единственное значение, так и массив. Соотвественно в зависимости от этого имеем две ветки обработки:

  1. если значение единственное - то обрабатывается только оно
  2. если передан массив значений - то обработка должна вестись для каждого элемента массива

Читать полностью

У людей, которые только начинают изучать язык Ruby, часто возникает вопрос, а что же такое блок, как им пользоваться, и в чём отличие блока от таких сущностей как proc и lambda. В этой статье я попытаюсь ответить на данный вопрос.


Читать полностью
17.05.10, 02:21
Автор pronix.service

Требуется человек умеющий писать тесты, дружащий с линуксом и понимающий javascript.

Так же необходимо уметь пользоваться git, capistrano,redmine.

Теоретически можно и начинающих - но только самостоятельных,т.к. нянек нет.

Идеальный вариант из Калининграда, но на удаленку тоже нужны.

Высылайте резюме на dima85@mail.ru

Так же пишите желаемую оплату в час(неделю,год, сдельно - кому как нравится).

01.02.10, 20:04
Автор ggg

Для того, чтобы дать возможность пользователю кастомизировать внешний вид в нашем проекте, мы используем liquid-шаблоны. Подробнее о том, что это такое можно почитать тут. Все бы хорошо, но, к сожалению, по liquid-у очень мало документации, то есть если вы хотите обрезать строку или сложить два числа с помощью liquid-а - то сделаете это без особых затруднений, почитав wiki, но если хотите сделать что-то посложнее - то вполне возможно столкнетесь с некоторыми трудностями. В данной статье, мне хотелось бы рассказать, с какими трудностями мы столкнулись в нашем проекте и как из забороли.


Читать полностью
Ближайшие события
ноябрь 2020
октябрь 2020
сентябрь 2020
Пн
Вт
Ср
Чт
Пт
Сб
Вс
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1