Загрузка...

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

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

Returning

     
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

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

Ближайшие события
декабрь 2017
ноябрь 2017
октябрь 2017
Пн
Вт
Ср
Чт
Пт
Сб
Вс
30
31
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
1
2
3