如何在 Voyager 的视图 edit-add.blade.php 中只显示部分表格?
How to display in the view edit-add.blade.php only some tables in Voyager?
这是我第一次使用 blade,对此我有点困惑。我需要显示一个类似于 Voyager 中默认 edit-add 视图附带的表单,但我需要显示一些基于角色的输入。我正在按当前登录的用户进行过滤并且工作正常,但我需要 hide/display 一些基于此的表单输入。
如何在 blade 视图中完成此操作?
以下是 Voyager 在 blade 视图中获取数据的方式:
@php
$dataTypeRows = $dataType->{(isset($dataTypeContent->id) ? 'editRows' :'addRows' )};
@endphp
@foreach($dataTypeRows as $row)
<!-- GET THE DISPLAY OPTIONS -->
@php
$options = json_decode($row->details);
$display_options = isset($options->display) ? $options->display : NULL;
@endphp
@if ($options && isset($options->formfields_custom))
@include('voyager::formfields.custom.' . $options->formfields_custom)
@else
<div class="form-group @if($row->type == 'hidden') hidden @endif @if(isset($display_options->width)){{ 'col-md-' . $display_options->width }}@else{{ '' }}@endif" @if(isset($display_options->id)){{ "id=$display_options->id" }}@endif>
{{ $row->slugify }}
<label for="name">{{ $row->display_name }}</label>
@include('voyager::multilingual.input-hidden-bread-edit-add')
@if($row->type == 'relationship')
@include('voyager::formfields.relationship')
@else
{!! app('voyager')->formField($row, $dataType, $dataTypeContent) !!}
@endif
@foreach (app('voyager')->afterFormFields($row, $dataType, $dataTypeContent) as $after)
{!! $after->handle($row, $dataType, $dataTypeContent) !!}
@endforeach
</div>
@endif
@endforeach
如果我的 table 'example' 包含:id、姓名、地址和 phone。如何在此视图表单中仅显示名称和地址的输入?
提前致谢。
我不明白你的意思但是
为了首先在视图中显示输入值,您应该将值发送到视图,例如在您拥有的控制器中:
public function test()
{
.....
return view('myView',compact('user'));
}
那么在你看来:
<input type="text" value"{{$user->address}}">
<input type="text" value"{{$user->first_name}}">
你应该试试这个:
public function edit(Request $request, $id)
{
$user = Example::find($id);
return view(‘viewname’,compact(‘user’));
}
edit-add.blade.php
<input type = “text” name=”name” value=”@if(isset($user->name)){{ old('name', $user->name) }}@else{{old('name')}}@endif”>
<input type = “text” name=”name” value=”@if(isset($user->address)){{ old('address', $user->address) }}@else{{old('address')}}@endif”>
您可以从管理界面编辑它而无需使用任何代码
只需转到设置菜单并单击 BREAD
这是我第一次使用 blade,对此我有点困惑。我需要显示一个类似于 Voyager 中默认 edit-add 视图附带的表单,但我需要显示一些基于角色的输入。我正在按当前登录的用户进行过滤并且工作正常,但我需要 hide/display 一些基于此的表单输入。
如何在 blade 视图中完成此操作?
以下是 Voyager 在 blade 视图中获取数据的方式:
@php
$dataTypeRows = $dataType->{(isset($dataTypeContent->id) ? 'editRows' :'addRows' )};
@endphp
@foreach($dataTypeRows as $row)
<!-- GET THE DISPLAY OPTIONS -->
@php
$options = json_decode($row->details);
$display_options = isset($options->display) ? $options->display : NULL;
@endphp
@if ($options && isset($options->formfields_custom))
@include('voyager::formfields.custom.' . $options->formfields_custom)
@else
<div class="form-group @if($row->type == 'hidden') hidden @endif @if(isset($display_options->width)){{ 'col-md-' . $display_options->width }}@else{{ '' }}@endif" @if(isset($display_options->id)){{ "id=$display_options->id" }}@endif>
{{ $row->slugify }}
<label for="name">{{ $row->display_name }}</label>
@include('voyager::multilingual.input-hidden-bread-edit-add')
@if($row->type == 'relationship')
@include('voyager::formfields.relationship')
@else
{!! app('voyager')->formField($row, $dataType, $dataTypeContent) !!}
@endif
@foreach (app('voyager')->afterFormFields($row, $dataType, $dataTypeContent) as $after)
{!! $after->handle($row, $dataType, $dataTypeContent) !!}
@endforeach
</div>
@endif
@endforeach
如果我的 table 'example' 包含:id、姓名、地址和 phone。如何在此视图表单中仅显示名称和地址的输入?
提前致谢。
我不明白你的意思但是 为了首先在视图中显示输入值,您应该将值发送到视图,例如在您拥有的控制器中:
public function test()
{
.....
return view('myView',compact('user'));
}
那么在你看来:
<input type="text" value"{{$user->address}}">
<input type="text" value"{{$user->first_name}}">
你应该试试这个:
public function edit(Request $request, $id)
{
$user = Example::find($id);
return view(‘viewname’,compact(‘user’));
}
edit-add.blade.php
<input type = “text” name=”name” value=”@if(isset($user->name)){{ old('name', $user->name) }}@else{{old('name')}}@endif”>
<input type = “text” name=”name” value=”@if(isset($user->address)){{ old('address', $user->address) }}@else{{old('address')}}@endif”>
您可以从管理界面编辑它而无需使用任何代码 只需转到设置菜单并单击 BREAD