Laravel 8使用相同的形式进行编辑和创建,
我是Laravel的新手,我正在尝试使用相同的表单字段进行更新和创建, 使用@include我加载相同的表单来创建和更新视图,有人可以解释为什么这是,而我缺少的是
feilds.blade.blade.php
<div class="form-group pad-top40">
<div class="row">
<label for="inputUsername" class="col-sm-4 control-label">
Warehouse Number
</label>
<label for="inputUsername" class="col-sm-4 control-label">
Number
</label>
<label for="inputUsername" class="col-sm-4 control-label">
Warehouse Code
</label>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="number" class="form-control"
placeholder="No" id="no" name="no">
</div>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="text" class="form-control"
placeholder="Warehouse Code" id="wh_code" name="wh_code" value='{{old('wh_code','')}}'>
</div>
</div>
</div>
<br>
<br>
<div class="row">
<label for="address1" class="col-sm-8 control-label">
Address Line 1
</label>
<label for="inputexpdate" class="col-sm-4 control-label">
Register Date
</label>
</div>
<div class="row">
<div class="col-sm-8">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="address"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="text" class="form-control" placeholder="Address" id="address1" name="address1">
</div>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="date" class="form-control"
placeholder="dd/yy/mm" id="reg_date" name="reg_date">
</div>
</div>
</div>
</div>
edit.blade.blade.php
<div class="card-body">
{!! Form::model($warehouse, ['route' => ['admin.warehouses.update', collect($warehouse)->first() ], 'method' => 'patch']) !!}
{{ csrf_field() }}
@include('admin.warehouses.fields')
{!! Form::close() !!}
</div>
create.blade.blade.php
<div class="card-body">
{!! Form::open(['route' => 'admin.warehouses.store']) !!}
{{ csrf_field() }}
@include('admin.warehouses.fields')
{!! Form::close() !!}
</div>
我尝试使用{ ()}}但不会加载,表单字段与表相同。 当我将其与Laravel Collective一起使用时,它可以很好地工作。
{!! Form::number('wh_no', null, ['class' => 'form-control','class'=>'livicon','data-name'=>'user']) !!}
I am new to Laravel and I am trying to use the same form fields for Update and create,
using @include I load same form to create and update views,can someone explain why this is,,and what I am missing is,
feilds.blade.php
<div class="form-group pad-top40">
<div class="row">
<label for="inputUsername" class="col-sm-4 control-label">
Warehouse Number
</label>
<label for="inputUsername" class="col-sm-4 control-label">
Number
</label>
<label for="inputUsername" class="col-sm-4 control-label">
Warehouse Code
</label>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="number" class="form-control"
placeholder="No" id="no" name="no">
</div>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="text" class="form-control"
placeholder="Warehouse Code" id="wh_code" name="wh_code" value='{{old('wh_code','')}}'>
</div>
</div>
</div>
<br>
<br>
<div class="row">
<label for="address1" class="col-sm-8 control-label">
Address Line 1
</label>
<label for="inputexpdate" class="col-sm-4 control-label">
Register Date
</label>
</div>
<div class="row">
<div class="col-sm-8">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="address"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="text" class="form-control" placeholder="Address" id="address1" name="address1">
</div>
</div>
<div class="col-sm-4">
<div class="input-group">
<span class="input-group-append">
<span class="input-group-text"><i
class="livicon" data-name="number"
data-size="18" data-c="#000"
data-hc="#000" data-loop="true"></i></span>
</span>
<input type="date" class="form-control"
placeholder="dd/yy/mm" id="reg_date" name="reg_date">
</div>
</div>
</div>
</div>
edit.blade.php
<div class="card-body">
{!! Form::model($warehouse, ['route' => ['admin.warehouses.update', collect($warehouse)->first() ], 'method' => 'patch']) !!}
{{ csrf_field() }}
@include('admin.warehouses.fields')
{!! Form::close() !!}
</div>
create.blade.php
<div class="card-body">
{!! Form::open(['route' => 'admin.warehouses.store']) !!}
{{ csrf_field() }}
@include('admin.warehouses.fields')
{!! Form::close() !!}
</div>
I have tried using {{old()}} but it won't load, the form fields are the same as the tables.
when I use the same with laravel collective,it work perfectly fine.
{!! Form::number('wh_no', null, ['class' => 'form-control','class'=>'livicon','data-name'=>'user']) !!}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您必须传递该值的对象才能在数据库上显示值。让我向您展示每个步骤:
因为,我们已经在两个
$ warehouse
上传递了两个create.blade.blade.php
和edit.blade.blade.php
现在在两种情况下,我们都可以使用相同的情况。现在,在表单上,您必须使用这样的值
$ warehouse- fieldName
。如果您也想使用旧值,则可以使用
旧值(fieldName,$ warehouse-&gt; fieldName)
You have to pass the object of the value to show the value on database. Let me show you every step:
Since, we have passed the
$warehouse
On bothcreate.blade.php
andedit.blade.php
now we can use this same on both cases.Now, on form, you have to use a value like this
$warehouse->fieldName
.If you want to use old values as well, you can use
old(fieldName,$warehouse->fieldName)