Closed tamurayk closed 3 years ago
[x] 事前調査
Laravel Collective
$ composer require "laravelcollective/html":"6.*"
[x] URL決める
GET /create
GET /{ユーザー名}/post/create
POST /create
POST /{ユーザー名}/post
[-] 画像アップロード先ディレクトリ作成 // storeメソッドで保存すれば、ディレクトリ作ってくれそうなので、一旦パス
[x] posts テーブル追加
[x] GET /create
return view('user.post.create')
{{ csrf_field }}
<input type="hidden" name="_token" value="tyKtcrH2KscjxVAsxb3KHXG5ppZ8te6PA6SJY8df">
[x] POST /create
$path = $request->file('image')->store(sprint_f('public/posts/%s', $user_id));
storeAsメソッドを使用
$post->image_path = basename($path);
[x] app/Http/UseCases/User/Post/ImageStore.php
[x] app/Http/UseCases/User/Post/PostStore.php
URL
TODO
[x] 事前調査
Laravel Collective
(Form ファサード) 使うかどうか決める$ composer require "laravelcollective/html":"6.*"
[x] URL決める
GET /create
vsGET /{ユーザー名}/post/create
POST /create
vsPOST /{ユーザー名}/post
[-] 画像アップロード先ディレクトリ作成 // storeメソッドで保存すれば、ディレクトリ作ってくれそうなので、一旦パス
[x] posts テーブル追加
[x] GET /create
return view('user.post.create')
するだけ{{ csrf_field }}
<input type="hidden" name="_token" value="tyKtcrH2KscjxVAsxb3KHXG5ppZ8te6PA6SJY8df">
[x] POST /create
$path = $request->file('image')->store(sprint_f('public/posts/%s', $user_id));
storeAsメソッドを使用
で任意のファイル名を指定できるので、uuid にする$post->image_path = basename($path);
useCase
[x] app/Http/UseCases/User/Post/ImageStore.php
[x] app/Http/UseCases/User/Post/PostStore.php
TODO ひとまず icebox に入れて他を実装する