如果关系不存在,则为默认值

kjd*_*n84 3 php datatables laravel

使用 Laravel Datatables 包:https : //github.com/yajra/laravel-datatables

我渴望加载belongsTo关系。但是,对于某些行,关系可能不存在,并且该relationship_id列将为空。

这导致数据表出现问题:

{ data: 'relationship.name' },
Run Code Online (Sandbox Code Playgroud)

如果关系不存在,则会引发错误。如果未找到关系,我将如何为此特定列设置默认值?我试过使用editColumn,它用于排序,但不适用于搜索。

Jon*_*eir 9

您可以使用withDefault()

public function relationship()
{
    return $this->belongsTo(...)->withDefault(['name' => 'default']);
}
Run Code Online (Sandbox Code Playgroud)