【172日目】【1日20分のRailsチュートリアル】【第12章】Relationshipのサンプルデータを生成する
今日は「12.2 フォローしているユーザー用のWebインターフェイス」から。
12.2 フォローしているユーザー用のWebインターフェイス
この節では、モックアップで示したようにフォロー/フォロー解除の基本的なインターフェイスを実装します。また、フォローしているユーザーと、フォロワーにそれぞれ表示用のページを作成します。
システム的なところが実装できたので次はビューを実装する感じかな。
12.2.1 フォローしているユーザーのサンプルデータ
1つ前の章のときと同じように、サンプルデータを自動作成するRakeタスクを使用して、データベースに実際のデータを登録するのがやはり便利です。
インターフェース作る前にサンプルデータを生成する。
リスト12.14は、リレーションシップのサンプルデータを生成するためのコードです。ここでは、最初のユーザーにユーザー3からユーザー51までをフォローさせ、それから逆にユーザー4からユーザー41に最初のユーザーをフォローさせます。
ふむふむ、サンプルデータとして最初のユーザーを使うんですね。
db/seeds.rb
# リレーションシップ users = User.all user = users.first following = users[2..50] followers = users[3..40] following.each { |followed| user.follow(followed) } followers.each { |follower| follower.follow(user) }
リスト12.14を実行してデータベース上のサンプルデータを作り直すために、いつものコマンドを実行しましょう。
コマンド実行。これでサンプルデータ作り直せたかな。
$ bundle exec rake db:migrate:reset : == 20170726030438 CreateRelationships: migrating ============================== -- create_table(:relationships) -> 0.0007s -- add_index(:relationships, :follower_id) -> 0.0005s -- add_index(:relationships, :followed_id) -> 0.0008s -- add_index(:relationships, [:follower_id, :followed_id], {:unique=>true}) -> 0.0013s == 20170726030438 CreateRelationships: migrated (0.0036s) ===================== $ bundle exec rake db:seed
今日の学習時間は【12分】。
次は「12.2.2 統計とフォロー用フォーム」から。