Laravel Nova:如何仅在更新资源时隐藏字段
Laravel Nova: How to hide fields only when updating the resource
我知道我可以使用 canSee
方法隐藏一些字段:
Text::make('Something')
->canSee(function ($request) {
return $request->user()->can('some ability');
}),
并且从 documentation 开始,有一个 canSeeWhen
方法可以根据用户的能力隐藏字段:
canSeeWhen('viewProfile', $this);
但是这些方法适用于所有情况,例如,如果我在字段上定义 canSee
方法,则该字段在索引、详细信息、创建和更新页面上是不可见的。
我想在用户编辑资源时隐藏一些字段。
我该怎么做?
我明白了。您可以使用 hideWhenUpdating
方法。
Text::make('Something')->hideWhenUpdating();
其他方法有:
hideFromIndex
hideFromDetail
hideWhenCreating
hideWhenUpdating
onlyOnIndex
onlyOnDetail
onlyOnForms
exceptOnForms
我知道我可以使用 canSee
方法隐藏一些字段:
Text::make('Something')
->canSee(function ($request) {
return $request->user()->can('some ability');
}),
并且从 documentation 开始,有一个 canSeeWhen
方法可以根据用户的能力隐藏字段:
canSeeWhen('viewProfile', $this);
但是这些方法适用于所有情况,例如,如果我在字段上定义 canSee
方法,则该字段在索引、详细信息、创建和更新页面上是不可见的。
我想在用户编辑资源时隐藏一些字段。
我该怎么做?
我明白了。您可以使用 hideWhenUpdating
方法。
Text::make('Something')->hideWhenUpdating();
其他方法有:
hideFromIndex
hideFromDetail
hideWhenCreating
hideWhenUpdating
onlyOnIndex
onlyOnDetail
onlyOnForms
exceptOnForms