このgemは、偽のデータを生成するPerlのData::Fakerライブラリの移植版です。
スクリーンショットを撮る(私のプロジェクトのスクリーンショットを撮る、Catch the Bestはこの宝石を作成するための最初の推進力でした)、リアルなテストデータを持ち、データベースに1つまたは2つ以上のレコードを入力するのに非常に便利です。あなたは開発をしています。
masterFakerのブランチであり、まだリリースされていない変更が含まれている可能性があります。使用可能な方法については、ご使用のバージョンのREADMEを参照してください。すべてのバージョンのリストはこちらから入手できます。
gem install faker
注:
uninitialized constant Faker::[some_class]エラーが発生した場合、gemのバージョンはここに記載されているバージョンよりも遅れています。gemがここに記載されているものであることを確認するには、Gemfileの行を次のように変更します。
gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'master'
require 'faker'
Faker::Name.name #=> "Christophe Bartell"
Faker::Internet.email #=> "kirsten.greenholt@corkeryfisher.info"
手順は、フェイカーボットのREADMEにあります。
メソッド呼び出しの前に。を付け
uniqueます。例えば:
Faker::Name.unique.name # This will return a unique name every time it is called
潜在的な値の数が限られているジェネレーターから要求された一意の値が多すぎると、
Faker::UniqueGenerator::RetryLimitExceeded例外が発生する場合があります。たとえば、テスト間などで返された一意の値のレコードをクリアすることができます。
Faker::Name.unique.clear # Clears used values for Faker::Name
Faker::UniqueGenerator.clear # Clears used values for all generators
生成されたデータと衝突する場合(つまり、ランダムで手動で設定された値でFactoryBotを使用する場合)、すでに使用されている値を一意のジェネレーターに与えることもできます。
# Usage:
# Faker::<generator>.unique.exclude(method, arguments, list)
# Add 'azerty' and 'wxcvbn' to the string generator with 6 char length
Faker::Lorem.unique.exclude :string, [number: 6], %w[azerty wxcvbn]
Fakerは、疑似乱数ジェネレーター(PRNG)のシードをサポートして、繰り返されるメソッド呼び出しの決定論的な出力を提供します。
Faker::Config.random = Random.new(42)
Faker::Company.bs #=> "seize collaborative mindshare"
Faker::Company.bs #=> "engage strategic platforms"
Faker::Config.random = Random.new(42)
Faker::Company.bs #=> "seize collaborative mindshare"
Faker::Company.bs #=> "engage strategic platforms"
Faker::Config.random = nil # seeds the PRNG using default entropy sources
Faker::Config.random.seed #=> 185180369676275068918401850258677722187
Faker::Company.bs #=> "cultivate viral synergies"
注:以下のジェネレーターの一部はまだリリースされていません。それらを使用する場合は、gemfileの行を次のように変更します。
gem 'faker', :git => 'https://github.com/faker-ruby/faker.git', :branch => 'master'
世界の場所によっては、Fakerに情報を印刷してもらいたい場合があります。これを支援するために、FakerはI18n gemを使用して、選択した領域の名前と郵便番号を表す文字列と形式を格納します。以下に示すように、必要なロケールを設定するだけで、Fakerが残りの処理を行います。
Faker::Config.locale = 'es'
# or
Faker::Config.locale = :es
ロケールがまだ存在しない場合は、
lib/localesディレクトリに作成すると、ニーズに合わせて要素をオーバーライドまたは追加できます。ロケールの使用方法について詳しくは、こちらをご覧ください
en-au-ocker:
faker:
name:
# Existing faker field, new data
first_name:
- Charlotte
- Ava
- Chloe
- Emily
# New faker fields
ocker_first_name:
- Bazza
- Bluey
- Davo
- Johno
- Shano
- Shazza
region:
- South East Queensland
- Wide Bay Burnett
- Margaret River
- Port Pirie
- Gippsland
- Elizabeth
- Barossa
CONTRIBUTING.mdを参照してください。
コメントやフィードバックは大歓迎です。グーグルグループを介してベンジャミンカーティスにメールを送信します。
また、不和チャンネルに参加して、改善や機能のリクエストに関することについて話し合うこともできます。
このコードは、MITライセンスの条件の下で無料で使用できます。