首页 > 解决方案 > 定制的 Laravel Nova 视图 - 包括完整的孩子详细信息

问题描述

我有一个 Laravel 应用程序,其中包含一个具有从父级到子级的 HasOne 关系的实体。

我现在正在介绍 Laravel Nova,并希望父级的详细视图包含来自子级的所有字段,而我的用户不必像使用 Nova BelongsTo 或 HasOne 字段那样单击它。它们看起来就像一张唱片。

假设我无法修改应用程序的结构,是否有现有的方法可以做到这一点?我可以用自己的代码覆盖详细信息屏幕吗?Nova 文档没有解决这个特定的用例,我在网上也找不到关于这个主题的任何其他问题。

我不关心需要创建或编辑条目,在这种情况下,Nova 将仅用于查看它们。

谢谢

标签: laravellaravel-nova

解决方案


没有一种简单的方法可以在父母的详细信息视图中显示所有孩子的详细信息。

最好的解决方案是使用title子属性。这使您可以在父级的索引视图和详细信息视图中自定义子级的文本表示。

默认情况下,您有:

public static $title = 'id';

可以替换为:

public static $title = 'name';

或者:

public function title()
{
    return $this->name . '(' . $this->email . ')';
}

来源:https ://nova.laravel.com/docs/1.0/resources/relationships.html#title-attributes


推荐阅读