我在Laravel中有一个项目,我想在index.blade中显示数据库中的文章
所以在Controller中,我得到了文章并将其保存在变量中 问题是这样的:该文章的图像不在index.blade中,而是在公共目录中的CSS中,因此如何使用已从数据库中获得的图像来更改它?在我的CSS文件中,您可以看到该图片作为网址
Contorller
public function home(Request $request)
{
$headerIntroduction=Category::where('name','معرفی کسب و کار')->get()->first()->articles()->get()->values()[1];
return view('app.index',compact('headerIntroduction'));
css
#slider-section, #home-section{
background-image:url(../../images/app/slider/1.jpg);
background-repeat:no-repeat;
background-size:cover;
background-color:#282f1f;
position:relative;
color:#fff;
padding: 130px 0;
}
答案 0 :(得分:2)
只有在谈论视图部件时,才能在Laravel刀片服务器模板中使用变量。因此,无法在CSS文件中使用此变量。
如果您仍要使用它。然后,您必须使用需要在<style>css</style>
文件(或任何刀片文件)中的样式标签(index.blade.php
,通常称为内联css)中使用变量的样式。
我假设图像 1.jpg 文件来自您的article
,那么为什么不使用下面的代码。
<style>
.backgroundclass
{
background-image:url(../../images/app/slider/{{your-article-variable}});
background-repeat:no-repeat;
background-size:cover;
background-color:#282f1f;
position:relative;
color:#fff;
padding: 130px 0;
}
</style>
答案 1 :(得分:1)
您应该在balde文件中包含用于beackground-image的CSS。
<style>
#slider-section, #home-section{
background-image:url({{$headerIntroduction->image}});
background-repeat:no-repeat;
background-size:cover;
background-color:#282f1f;
position:relative;
color:#fff;
padding: 130px 0;
}
</style>
图像是数据库表中列的名称。