【问题标题】:Error Accessing Image using create post from admin使用管理员创建帖子访问图像时出错
【发布时间】:2021-01-01 21:28:01
【问题描述】:

我在访问图像时遇到问题 我尝试使用数据库播种器访问公共/存储/图像中的图像,并且效果很好 像这样:

但如果我尝试使用“从管理员创建帖子”访问图像,它就不起作用。 像这样:

这是我的代码:

PostController.php

public function store(){
        $inputs = request()->validate([
            'title'=>'required|min:8|max:255',
            'post_image'=>'file', //mime: jpeg, png
            'body'=>'required'
        ]);
        if(request('post_image')){
            $inputs['post_image'] = request('post_image')->store('images');
        }
        auth()->user()->posts()->create($inputs);
        return back();
}

blog-home.blade.php

@foreach ($posts as $post)
    <div class="card mb-4">
        <img class="card-img-top" src="{{($post->post_image)}}" alt="Card image cap">
        <div class="card-body">
        <h2 class="card-title">{{$post->title}}</h2>
        <p class="card-text">{{Str::limit($post->body, '50', '....')}}</p>
        <a href="{{route('post', $post->id)}}" class="btn btn-primary">Read More &rarr;</a>
        </div>
        <div class="card-footer text-muted">
        Posted on {{$post->created_at->diffForHumans()}} by
        <a href="#">{{$post->name}}</a>
        </div>
    </div>
    @endforeach

web.php(路由)

Auth::routes();
Route::get('/', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Route::get('/post/{post}', [App\Http\Controllers\PostController::class, 'show'])->name('post');    

Route::middleware('auth')->group(function(){
    Route::get('/admin', [App\Http\Controllers\AdminController::class, 'index'])->name('admin.index');

    Route::get('/admin/posts', [App\Http\Controllers\PostController::class, 'index'])->name('post.index');
    Route::get('/admin/posts/create', [App\Http\Controllers\PostController::class, 'create'])->name('post.create');
    Route::post('/admin/posts', [App\Http\Controllers\PostController::class, 'store'])->name('post.store');
});

【问题讨论】:

    标签: php html laravel image web


    【解决方案1】:

    记得创建一个从 public/storage 到 storage/app/public 的符号链接。

    运行符号链接:

    php artisan storage:link
    

    并更改您的图像标签 src tp

      <img class="card-img-top" src="{{url('storage/'.$post->post_image)}}" alt="Card image cap">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-29
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多