如何使用 Laravel 路由前缀在不同页面上显示图片?
How do I show a picture on different pages using Laravel Route Prefix?
我有一个图像文件。不止一页使用此图像文件。
图像正确显示在仪表板中。因为这个页面没有使用 Route Prefix。
例如;品牌页面使用路由前缀。此页不显示图片。
Route::middleware(['auth'])->group(function () {
Route::get('dashboard', [homeAppController::class, 'dashboard'])->name('dashboard');
//web.php
Route::controller(brandController::class)->group(function () {
Route::group(['prefix' => 'brand', 'as' => 'brand.'], function () {
Route::get('/', 'index')->name('index');
Route::get('/create', 'create')->name('create');
Route::get('/store', 'store')->name('store');
Route::get('/show/{id}', 'show')->name('show');
Route::get('/edit/{id}', 'edit')->name('edit');
Route::get('/update/{id}', 'update')->name('update');
Route::get('/destroy/{id}', 'destroy')->name('destroy');
});
});
//Dashboard
<img alt="" src="../assets/media/svg/brand-logos/{{ $data->logo }}"/>
//brand/show
<img class="rounded-0" src="../assets/media/svg/brand-logos/{{ $brand->logo }}" alt=""/>
图片未显示在此页面上。因为路由以品牌前缀开头。例如; .../brand/assets/...
发生这种情况是因为您使用的是相对路径,因此在路由上会有所不同。
您可以像 foo.com/bar.jpg
一样使用完整的 url
或者只是 /bar.jpg
(开始 /
很重要)
或者如果您使用 Laravel blade,您还可以使用
<img src="{{ asset('bar.jpg') }}" />
我有一个图像文件。不止一页使用此图像文件。 图像正确显示在仪表板中。因为这个页面没有使用 Route Prefix。 例如;品牌页面使用路由前缀。此页不显示图片。
Route::middleware(['auth'])->group(function () {
Route::get('dashboard', [homeAppController::class, 'dashboard'])->name('dashboard');
//web.php
Route::controller(brandController::class)->group(function () {
Route::group(['prefix' => 'brand', 'as' => 'brand.'], function () {
Route::get('/', 'index')->name('index');
Route::get('/create', 'create')->name('create');
Route::get('/store', 'store')->name('store');
Route::get('/show/{id}', 'show')->name('show');
Route::get('/edit/{id}', 'edit')->name('edit');
Route::get('/update/{id}', 'update')->name('update');
Route::get('/destroy/{id}', 'destroy')->name('destroy');
});
});
//Dashboard
<img alt="" src="../assets/media/svg/brand-logos/{{ $data->logo }}"/>
//brand/show
<img class="rounded-0" src="../assets/media/svg/brand-logos/{{ $brand->logo }}" alt=""/>
图片未显示在此页面上。因为路由以品牌前缀开头。例如; .../brand/assets/...
发生这种情况是因为您使用的是相对路径,因此在路由上会有所不同。
您可以像 foo.com/bar.jpg
一样使用完整的 url
或者只是 /bar.jpg
(开始 /
很重要)
或者如果您使用 Laravel blade,您还可以使用
<img src="{{ asset('bar.jpg') }}" />