-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmemo.rb
48 lines (33 loc) · 1.24 KB
/
memo.rb
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
class Memo < Post
# Считывет из консоли до тех пор пока не введено слово 'end'
# Введенные строки сохраняются в массив
def read_from_console
puts 'Type text here. Type "End" to finish input'
@text = []
line = nil
while line != 'end'
line = STDIN.gets.chomp
@text << line
end
@text.pop
end
def to_strings
time_string = "Created at: #{@created_at.strftime('%Y.%m.%d, %H:%M:%S')}"
#Возвращает массив строк введенных пользователем
# Первый элемент массива - строка с отформатированным временем создания записи
return @text.unshift(time_string)
end
def to_db_hash
return super.merge(
{
'text' => @text.join('\n\r')
}
)
end
# загружаем свои поля из хэш массива
def load_data(data_hash)
super(data_hash) # сперва дергаем родительский метод для общих полей
# теперь прописываем свое специфичное поле
@text = data_hash['text'].split('\n\r')
end
end