petrovich 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +21 -8
- metadata +2 -2
data/README.md
CHANGED
@@ -30,11 +30,11 @@ p.firstname('Пётр', :dative) # => Петру
|
|
30
30
|
p.lastname('Сергеевич', :dative) # => Сергеевичу
|
31
31
|
```
|
32
32
|
|
33
|
-
Конструктор класса
|
33
|
+
Конструктор класса `Petrovich` принимает в качестве единственного аргумента пол. Пол может иметь значения `:male`, `:female` или `:both`. Последнее означает, что имя не склоняется по родам (обычно, это не нужно).
|
34
34
|
|
35
35
|
### Продвинутое использование
|
36
36
|
|
37
|
-
Вы можете подмешать модуль
|
37
|
+
Вы можете подмешать модуль `Petrovich::Extension` в любой класс. Это особенно полезно при использовании `ActiveRecord` и подобных ORM.
|
38
38
|
|
39
39
|
```ruby
|
40
40
|
class User < ActiveRecord::Base
|
@@ -62,6 +62,7 @@ end
|
|
62
62
|
|
63
63
|
```ruby
|
64
64
|
class Person
|
65
|
+
include Petrovich::Extension
|
65
66
|
|
66
67
|
petrovich :firstname => :name,
|
67
68
|
:middlename => :patronymic,
|
@@ -81,20 +82,20 @@ class Person
|
|
81
82
|
end
|
82
83
|
```
|
83
84
|
|
84
|
-
В примерах выше, вы указываете при помощи метода `petrovich` соответствие фамилии, имени и отчества
|
85
|
+
В примерах выше, вы указываете при помощи метода `petrovich` соответствие фамилии, имени и отчества методам или атрибутам класса. После этого, вы легко можете склонять имена, используя следующий синтаксис вызовов:
|
85
86
|
|
86
87
|
```ruby
|
87
88
|
user = User.new
|
88
89
|
user.my_firstname # => Пётр
|
89
|
-
user.my_firstname_dative => Петру
|
90
|
+
user.my_firstname_dative # => Петру
|
90
91
|
```
|
91
92
|
|
92
93
|
и для второго примера:
|
93
94
|
|
94
95
|
```ruby
|
95
|
-
person =
|
96
|
+
person = Person.new
|
96
97
|
person.name # => Иван
|
97
|
-
person.name_dative => Ивану
|
98
|
+
person.name_dative # => Ивану
|
98
99
|
```
|
99
100
|
|
100
101
|
Вы просто добавляете `_падеж` в конец имени оригинального метода и получаете нужное значение. Вот список суффиксов, которые вы можете добавить к имени оригинального метода, чтобы получить имя в нужном падаже:
|
@@ -109,13 +110,25 @@ person.name_dative => Ивану
|
|
109
110
|
## Разработчики
|
110
111
|
|
111
112
|
* [Андрей Козлов](https://github.com/tanraya) - идея, реализация
|
112
|
-
* [Дмитрий Усталов](
|
113
|
+
* [Дмитрий Усталов](http://eveel.ru) - неоценимая помощь
|
114
|
+
|
115
|
+
## Дальнейшее развитие
|
116
|
+
|
117
|
+
Мы планируем и далее улучшать этот проект. Поэтому, нам важен отклик от других разработчиков, использующих этот гем. Вот наши планы:
|
118
|
+
|
119
|
+
* Добавить debug-mode, чтобы видеть, какое именно правило применилось
|
120
|
+
* Cli-interface, чтобы работать с гемом из коммандной строки
|
121
|
+
* Веб-интерфейс для проверки имён (ф.и.о) и их логгирования, для улучшения правил распознавания.
|
122
|
+
* Больше тестов
|
123
|
+
* Проверка работы с mongoid и mongo-mapper
|
124
|
+
|
125
|
+
Если вы хотите помочь этому проекту, вы можете реализовать любой план из перечисленных выше. Но прежде свяжитесь с разработчиками, чтобы ваши и наши планы не пересекались.
|
113
126
|
|
114
127
|
## Содействие
|
115
128
|
|
116
129
|
Если вы нашли баги, как программной части, так и в словаре, вы всегда можете форкнуть репозиторий и внести необходимые правки. Ваша помощь не останется незамеченной. Если вы заметили ошибки при склонении падежей имён, фамилий или отчеств, можете написать об этом в issues. Проблема будет сразу же исследована и решена.
|
117
130
|
|
118
|
-
Как всегда, чтобы помочь, вам нужно:
|
131
|
+
Не стесняйтесь добавлять улучшения. Как всегда, чтобы помочь, вам нужно:
|
119
132
|
|
120
133
|
1. Fork it
|
121
134
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: petrovich
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-04-
|
12
|
+
date: 2013-04-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: i18n
|