Laravel 背景图像:url 正在返回 1

Laravel background-image:url is returning 1

我正在 Laravel 中制作网络应用程序。我有以下代码片段:

<div class="user-info" style="background-image:url({{ asset(Auth::user()->partner->background) or '/images/default/background1.jpg'}})">

这是 HTML 中的结果:

<div class="user-info" style="background-image:url(1)">

我应该从数据库中得到以下内容:

images/backgrounds/HRVl7TXkAxlhASj14vAV.png

这很奇怪,因为如果我执行以下操作:

{{dd(Auth::user()->partner->background)}}

它实际上 dd() 来自数据库的文件名 images/backgrounds/HRVl7TXkAxlhASj14vAV.png。当我把它放在背景图像中时,为什么它回显 1 而不是文件名:url?

尝试

{!! "'".asset(Auth::user()->partner->background)."'" or '/images/default/background1.jpg'!!}

编辑

有点乱,但应该可以

{!! Auth::user()->partner && Auth::user()->partner->background ? "'".asset(Auth::user()->partner->background)."'" : '/images/default/background1.jpg' !!}

我建议您为此功能在用户中编写单独的方法。
像这样:

public function background()
{
    // your awesome logic
    return $pathToBackground;
}

然后:

<div class="user-info" style="background-image:url('{!! asset(Auth::user()->background()) !!}');" >

尝试

   <div class="user-info" style="background-image:url({{ asset(($background=Auth::user()->partner->background) ? $background :'/images/default/background1.jpg' )}})">