前提・実現したいこと
Laravel6.0で旅行投稿サイトを制作しています。
画像を投稿したいのですが、うまく投稿できず、デフォルトの写真アイコンのようなものだけが
表示されてしまいます。DBにも画像は保存されております。
加えて、storage>app>public>public>pictureに画像が保存されています。
ご教授いただけますと幸いです。
該当のソースコード
@if(count($contents)>0) <div class="container"> <div class="row"> <div class="card-columns"> @foreach($contents as $content) <div class="mb-5"> <img src="{{asset('storage/picture/' . $content->picture) }}" class="rounded float-left" width="352" height="130"> <div class="card" style="width: 22rem;"> <div class="card-body"> <h5 class="card-title">{{ $content->title }}</h5> </div> <ul class="list-group list-group-flush"> <li class="list-group-item">大陸名:{{ $content->continent}}</li> <li class="list-group-item">国名:{{ $content->country }}</li> <li class="list-group-item">費用:¥{{ $content->costs }}</li> <li class="list-group-item">滞在期間:{{ $content->span }}日間</li> <li class="list-group-item"><p class="card-text">内容;<br>{{ $content->content }}</p></li> <li class="list-group-item"><span class="text-muted">投稿時間 {{ $content->created_at }}</span></li> </ul> <div class="card-body"> <a href="{{route("content.show" , $content->id) }}" class="btn btn-primary">詳細</a> @if(Auth::id() == $content->user_id) {!! link_to_route('content.edit', '編集', $content->id, ['class' => 'btn btn-success']) !!} {!! Form::open(['route' => ['content.destroy', $content->id], 'method' => 'delete']) !!} {!! Form::submit('削除', ['class' => 'btn btn-danger']) !!} {!! Form::close() !!} @endif </div> </div> </div> @endforeach </div> </div> </div> {{ $contents->links() }} @endif
public function update(ContentRequest $request, $id) { if($request->validated()) { $content =new Content; $content->user_id = $request->user_id; $content->content = $request->content; $content->title = $request->title; $content->span = $request->span; $content->continent = $request->continent; $content->country = $request-> country; $content->costs = $request->costs; $filename = $request->file('picture')->store('public/picture'); $content->picture = basename($filename); $content->save(); } return redirect('/');
試したこと
・php artisan storage:linkを行う
・viewsでdd($content->picture)で確認してみたらとれていました。
・パスをstorage\picture\にする
補足情報(FW/ツールのバージョンなど)
laravel.6.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/28 09:20