MaleOrFemale - gem для определения пола человека (male, female, unisex) по его имени. Гем также определяет тип имени (официальное или неформальное).
Демонстрация работы: http://typograf.herokuapp.com/gender
На данный момент гем определяет только русскоязычные имена
require 'male_or_female'
name = MaleOrFemale::Detector.new('Дима')
name.gender # => :male
name.format # => :informal
Гем может принимать параметр source при создании экземпляра класса. Он указывает на источник данных (один скомпилированный файл или множество файлов по букве алфавита).
MaleOrFemale::Detector.new('Саша', source: :compiled)
MaleOrFemale::Detector.new('Олег', source: :source)
Режим 'compiled' включен по-умолчанию.
Режим 'source' берет данные из файлов по первой букве имени. Данный режим, теоретически, выгодно использовать при небольшом количестве запросов.
Однако, в данном случае, загружаемые файлы имеют в названии юникод-символы, что может выдавать исключение, будте аккуратны с этим режимом.
Add this line to your application's Gemfile:
gem 'male_or_female'
And then execute:
$ bundle
Or install it yourself as:
$ gem install male_or_female
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request