我面临Laravel 9的问题。在我的控制器中,我创建了一个变量,其中包含要返回到视图的html代码。
我在确定应该在哪里使用单引号、双引号或反引号时遇到问题,以便正确编译image src中的{{asset((}}。
现在,我的图像url在控制台中看起来是这样的:http://127.0.0.1:8000/%7B%7B%20asset(存储/上传/test2png.png(%20%7D%7D
以下是控制台中的错误:
GEThttp://127.0.0.1:8000/%7B%7B%20asset(存储/上传/test2 png.png(%20%7D%7D 404(未找到(
这是我谈论的变量:
$celebrityDetailsContent = `
@if(isset($celebrityClicked))
<div id="celebrity_text_and_picture_container" class="w-100 p-3">
<img src="{{ asset('storage/upload/'.{$celebrityClicked->image}) }}" class="float-start img-border-radius img-thumbnail w-50 m-3" alt="Celebrity photo" title="Celebrity photo">
<p class="fw-bold">{$celebrityClicked->firstname} {$celebrityClicked->lastname}</p>
<p class="text-start">{$celebrityClicked->description}</p>
</div>
@else
<h2 class="fw-bold">Click on a celebrity to display details</p>
@endif
`;
return $celebrityDetailsContent;
谢谢你的帮助。
不要在控制器中使用{{ }}
。它只适用于blade
文件。试试这个:
if (isset($celebrityClicked)) {
$celebrityDetailsContent = '
<div id="celebrity_text_and_picture_container" class="w-100 p-3">
<img src="' . asset('storage/upload/' . $celebrityClicked->image) . '" class="float-start img-border-radius img-thumbnail w-50 m-3" alt="Celebrity photo" title="Celebrity photo">
<p class="fw-bold">' . $celebrityClicked->firstname . ' ' . $celebrityClicked->lastname . '</p>
<p class="text-start">' . $celebrityClicked->description . '</p>
</div>';
} else {
$celebrityDetailsContent = '<h2 class="fw-bold">Click on a celebrity to display details</p>';
}
return $celebrityDetailsContent;