laravel5.7で簡単なSNSを作ってみた。その1

laravel5.7で簡単なSNSを作ってみた。その1

1, アカウントのメール認証はしない。認証しないメアドとパスワードだけ(無限にアカウントが作れる)
2, twitterみたいに文字だけの投稿
3, 他ユーザをフォローできる
4, DMが送れる。

これだけあれば、とりあえずSNSっぽいだろ。たぶん…。

1, laravel標準のユーザ認証を使う。

laravel5.2でユーザ認証サイトの作り方

2, これだけでログイン画面や新規アカウント登録画面が生成される(/login)
routes/web.php

ログイン画面や新規登録画面などは、php artisan route:listで確認。

3, laravel標準の認証だと、emailの本人確認が入っていないけど、テスト用なのでこのまま使う(適当なメアドを入れてアカウント作り放題)
※実際には、本人確認やSNSログイン機能が必要

4, ホーム画面(resources/views/home.blade.php)に、twitterのような投稿フォームとタイムラインを生成する
とりあえず、必要そうなモデルを作る
Model生成時に-allオプションで、Model/Controller/Migration(テーブル設計)/factory(fakerでダミーデータ生成)も一緒に作ってくれる。いつの間にこんなに便利になった?!

投稿テーブル定義

5, 実際の投稿画面とタイムラインを作る(resources\views\home.blade.php)

PostController.php

7, routes/web.phpで、各種コントローラーを生成

8, 各モデルにprotected $guarded = [‘id’];を追加。投稿者リレーションを張る

8, migrate(テーブル生成) & factory(レコード生成)

とりあえず、ログイン機能付きの掲示板みたいな感じになった。
後は、いいねボタン、各個人ページ、フォロー、DM辺りを作れば完成か?
長くなってきたので、本日はココまで!