Help us understand the problem. What is going on with this article?

Fakerを使ってみました!(使い方と実行例)

More than 1 year has passed since last update.

はじめに

今、twitterのポートフォリオを作成しているものでございます。Userを一つ一つ生成ではなく、自動生成したいということで、Fakerというgemがあったので使ってみました。

Fakerとは

先にいうと、 "ダミーデータを自動生成してくれるもの" です。

先ほども述べましたが、自分で一つ一つ$ rails cなどで作ったりするのが面倒臭いというような人には嬉しいgemです。

使い方

1, gemを入れる

まず、gemを入れてからgemをインストールしていきます。

※下記をGemfileに記載してください。
 gem 'faker', :git => 'https://github.com/stympy/faker.git', :branch => 'master'
※Gemfileに記述を終えたらターミナルでインストールします。
$ bundle install

これでFakerが使用できるようになります。

2, seeds.rbに記述する

次に、usersテーブルに100件のダミーデータを追加していきます。
今回、name, email, password の3つのカラムにダミーデータを生成します。
(db/seeds.rb)

100.times do |n|
  name = Faker::Pokemon.name
  email = Faker::Internet.email
  password = "password"
  User.create!(name: name,
               email: email,
               password: password,
               password_confirmation: password,
               )
end

また、userのnameカラムにはname = Faker::Pokemon.nameというコードを入れており、これはname変数にポケモンの名前がランダムで入っていきます。

Fakerで生成できるものはGitHubのREADMEに全て載っています。
ワンピースのキャラクターとかまでいろいろあります。

入力が終わったら、ターミナルで下記のコマンドを実行してください。

$ bundle exec rails db:seed

3, seeds.rbのデータが反映されたか確認

記述したseeds.rbのデータが反映されたか確認していきます。

$ bundle exec rails c
irb(main):001:0> User.count
=> 102

データベースでも確認してみると、しっかり生成されておりました。

スクリーンショット 2018-10-03 19.16.01.png

終わりに

すごく便利な機能だったので、記事にしてみました。
もし、間違っている点等があった場合はご教示いただけますと幸いです。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away