h1. Belka

TODO: Write a gem description

h2. Installation

Add this line to your application’s Gemfile:

<pre>gem 'belka'</pre>

And then execute:

<pre>$ bundle</pre>

Or install it yourself as:

<pre>$ gem install belka</pre>

h2. Введение

Часто встает задача заполнения баз данных «белкой», т.е. случайно сгенерированными данными, похожими на настоящие. Данный gem аналогичен русскому генератору “Ryba”:github.com/be9/ryba И больше того спизжен до последней строчки кода с небольшими изменениями касающихся Беларуси.

К таким данным относятся:

Есть gemы, умеющие генерировать такие данные на английском: “faker”:faker.rubyforge.org, “random_data”:rubyforge.org/projects/random-data и другие.

Библиотека находится в активной разработке. На данный момент реализованы:

Ниже описан интерфейс для реализованных возможностей.

h2. Генерация имен людей

Методы из @Belka::Name@.

@Belka::Name.first_name(male = nil)@ — случайное имя.

@Belka::Name.middle_name(male = nil)@ — случайное отчество.

@Belka::Name.family_name(male = nil)@ — случайная фамилия.

@Belka::Name.full_name(male = nil)@ — случайное ФИО (например, “Щетинин Камилл Ростиславович”).

Параметр @male@ указывает пол (@true@ — мужской, @false@ — женский). Если параметр не указывать, будет выбран случайный пол.

Чтобы получить имена для одного пола, можно воспользоваться методом @Belka::Name.gender@, возвращающим случайный пол. Либо простым вызовом:

<pre><code>

gender = Belka::Name.gender
first_name = Belka::Name.first_name(gender)
family_name = Belka::Name.family_name(gender)

</pre></code>

…либо с помощью блока

<pre><code>

Belka::Name.gender do |gender|
  first_name = Belka::Name.first_name(gender)
  family_name = Belka::Name.family_name(gender)
end

</pre></code>

h2. Генерация телефонов

Метод @Belka::PhoneNumber.phone_number@.

<pre><code>

>> Belka::PhoneNumber.phone_number
=> "8-(078)(5) 129-45-53"
>> Belka::PhoneNumber.phone_number
=> "8-(078) 924-78-14"

</code></pre>

h2. Генерация адресов

Методы из @Belka::Address@.

@Belka::Address.index@ — случайный почтовый индекс (просто случайное число между 220000 и 224033). _Пример: 223170.

@Belka::Address.city@ - случайный город Беларуси. _Пример: “Несвиж”_.

@Belka::Address.full_city@ - случайный город с указанием региона, если это необходимо (город не является областным центром). _Примеры:_

@Belka::Address.street@ - случайное название улицы. _Примеры:_

@Belka::Address.address@ - случайный адрес. _Примеры:_

@Belka::Address.postal@ - случайный полный почтовый адрес. _Примеры:_

Обратите внимание, что индекс не является настоящим и что в городе может не быть такой улицы (а на улице — такого дома, а в доме — такой квартиры).

h2. Генерация имен компаний

@Belka::Company.name@ - случайное имя компании. _Примеры:_

Опция :solidity позволяет управлять длиной имени. Например, @Belka::Company.name(:solidity => 3)@ генерирует более солидное имя для компании:

h2. Contributing

  1. Fork it ( github.com/[my-github-username]/belka/fork )

  2. Create your feature branch (‘git checkout -b my-new-feature`)

  3. Commit your changes (‘git commit -am ’Add some feature’‘)

  4. Push to the branch (‘git push origin my-new-feature`)

  5. Create a new Pull Request

h2. Лицензия

Библиотека belka распространяется по лицензии MIT, см. файл MIT-LICENSE.