我已将徽标存储在数据库中,并希望将其显示在@include('layouts.footer')
中包含的页脚中。我正在使用此代码从数据库中获取图像
public function show(){
$logo = DB::table('logos')->get();
return view('layouts.footer',['logo'=>$logo]);
}
我想使用
在页脚中显示这些图像 <div class="footer">
@foreach($logo as $l)
{{ $l->company_name}}
{{ $l->company_logo}}
@endforeach
<p class="footer-text">© Copyright <?php echo date("Y"); ?> Hotel Store Partners</p>
</div>
,但返回错误“未定义的变量徽标”。 在页脚中显示图像的正确方法是什么?
答案 0 :(得分:1)
尝试使用 View Composer
在您的AppserviceProvider boot
方法中,您可以收集这些名称并一次传递给所有视图。
Reference
答案 1 :(得分:0)
请放置image
标签
<div class="footer">
@foreach($logo as $l)
{{ $l->company_name}}
<img src="{{ url('public/your path/'.$l->company_logo) }}" class="image_preview" width="auto" height="150px">
@endforeach
<p class="footer-text">© Copyright <?php echo date("Y"); ?> Hotel Store Partners</p>
</div>
答案 2 :(得分:0)
有两种方法可以实现此目的: 1.将此代码放在页脚中。
@php
$logo = DB::table('logos')->get();
@endphp
<div class="footer">
@if(count($logo))
@foreach($logo as $l)
{{ $l->company_name}}
{{ $l->company_logo}}
@endforeach
@endif
<p class="footer-text">© Copyright <?php echo date("Y"); ?> Hotel Store Partners</p>
</div>
但是这种方法是不好的做法
创建FooterComposer
公共函数撰写(查看$ view) { $ logo = DB :: table('logos')-> get(); $ view-> with([['logo'=> $ logo]); }
现在$ logo可以在页脚中访问。
答案 3 :(得分:0)
我使用过View Composer。 在AppServiceProvider引导方法中,我添加了以下代码:
public function boot()
{
View::composer('layouts.app', function($view){
$view->with('logo', Logo::all());
});
}
在控制器中,我使用了以下代码:
return view('layouts.footer');
在页脚中,我使用了以下代码:
<footer>
@foreach($logo as $l)
<p>{{ $l->company_name }}</p>
<img src="https://partners.hotelstore.co.ke/public{{ $l->company_logo }}" style="width:100px; height:75px;">
@endforeach
<p class="footer-text">© Copyright <?php echo date("Y"); ?> Hotel Store Partners</p>
</footer>
这是最终在页脚上显示图像的内容。