# laravelとvue.jsを使って飲食店検索サイトを作ってみる

OVERVIEW

laravel + vue.jsでwebサービスを作りたいと思い、表題。以前使ったぐるナビapiも利用してみっぞー。

# 備わってる機能
- ユーザー登録、ログイン、ログアウト、退会
- 記事登録、編集、削除
- vue.jsを用いて画面遷移をせずに記事にいいねをつけ外しができる機能
- vue.jsのライブラリであるVue Tags Inputを使って記事にタグ機能とタグ一覧機能を作成
- フォロー機能、ユーザーページ機能


# 開発環境

php 7.3
laravel 6.8
docker
laradock
postgresSQL
nginx

# 新しく学んだこと
- dockerを用いた環境構築
- ER図の書き方
- MD Bootstrapの利用
- DBのテーブル同士のリレーションの追加
- middlewareを用いてログインしてない場合は特定ページのURLを入れても、表示せずにログイン画面に遷移する処理
- tinkerを用いてDBのレコードを削除するなどの操作
- ポリシーを利用してログインしている人としていない人で閲覧できるページ、できる処理を分ける
- vue.jsのライブラリであるVue Tags Inputを使ってタグ入力のvueコンポーネントを作った

# 苦労したところ
- コントローラーのアクションでモデルを使ってDBから欲しいレコードを取得する際に、帰ってくる値がコレクションだと理解するのに時間がかかり、viewで表示する際にうまく表示できなかった。コレクションだと理解してからはモデルに備わっているfirst()メソッドなどで欲しいデータのみを取り出すことができ、viewへのデータ渡しもうまくいくことができた。

#サイトはこちら
http://eat-have-fun.herokuapp.com/


WEBSITE