Form::Model eloquent 绑定
Form::Model eloquent binding
当我使用 with(
进行 eloquent 查询时,我在填充输入值时遇到问题
控制器:
private $viewPath = "pages.person.";
public function edit($id)
{
$person = Person::where('id', '=', $id)->with('Email', 'Phone', 'User', 'Client', 'JuridicPerson.TypeActivities')->firstOrFail();
$this->setData('person', $person); // Set information to be used in the creation of `views` and `nest.views`.
$this->setData('users', User::lists('name', 'id'), ['0' => 'Select…']); // Set information to be used in the creation of `views` and `nest.views`.
return $this->view($this->viewPath.'edit'); // Register a new view.
}
我的观点是在 edit
和 create
之间共享表格的。所以我有 create.blade.php
、edit.blade.php
并且都调用了 form.blade.php
这个我 不能 改变。
我的edit.blade
{{ Form::model($person, array('method' => 'PATCH', 'class' => 'defaultForm', 'route' => array('person.update', $person->id))) }}
@include('pages.person.form')
{{ Form::close() }}
我的form.blade
<!-- This input brings the correct value -->
<div class="row">
<div class="col-md-12">
{{ Form::input('name', 'name', null, ['class' => 'form-control', 'placeholder' => 'Nome', 'maxlength' => 35, 'required', 'autofocus']) }}
</div>
</div>
<!-- This input value is empty -->
<div class="row">
<div class="col-md-12">
{{ Form::textarea('Client[observation]', null, ['class' => 'form-control', 'placeholder' => 'Observations']) }}
</div>
</div>
但是 如果我在 html 中的任何位置添加这段代码,我会在 client
...[=25= 中得到正确的值]
{{ $person->client }}
不确定我应该怎么做来修复我的代码,数据是正确的,当我打印数据(上面的代码)时,输入输出正确的值(但我不能 return为用户打印在屏幕上)。
我需要的是将正确的值打印到正确的输入中。
加载该关系时使用 client
而不是 Client
。
当您执行 {{ $person->client }}
时,它具有加载该客户关系的副作用,因此可以使用它。
加载关系时,您应该使用函数的名称,确切地说,它负责建立这些关系。
当我使用 with(
控制器:
private $viewPath = "pages.person.";
public function edit($id)
{
$person = Person::where('id', '=', $id)->with('Email', 'Phone', 'User', 'Client', 'JuridicPerson.TypeActivities')->firstOrFail();
$this->setData('person', $person); // Set information to be used in the creation of `views` and `nest.views`.
$this->setData('users', User::lists('name', 'id'), ['0' => 'Select…']); // Set information to be used in the creation of `views` and `nest.views`.
return $this->view($this->viewPath.'edit'); // Register a new view.
}
我的观点是在 edit
和 create
之间共享表格的。所以我有 create.blade.php
、edit.blade.php
并且都调用了 form.blade.php
这个我 不能 改变。
我的edit.blade
{{ Form::model($person, array('method' => 'PATCH', 'class' => 'defaultForm', 'route' => array('person.update', $person->id))) }}
@include('pages.person.form')
{{ Form::close() }}
我的form.blade
<!-- This input brings the correct value -->
<div class="row">
<div class="col-md-12">
{{ Form::input('name', 'name', null, ['class' => 'form-control', 'placeholder' => 'Nome', 'maxlength' => 35, 'required', 'autofocus']) }}
</div>
</div>
<!-- This input value is empty -->
<div class="row">
<div class="col-md-12">
{{ Form::textarea('Client[observation]', null, ['class' => 'form-control', 'placeholder' => 'Observations']) }}
</div>
</div>
但是 如果我在 html 中的任何位置添加这段代码,我会在 client
...[=25= 中得到正确的值]
{{ $person->client }}
不确定我应该怎么做来修复我的代码,数据是正确的,当我打印数据(上面的代码)时,输入输出正确的值(但我不能 return为用户打印在屏幕上)。
我需要的是将正确的值打印到正确的输入中。
加载该关系时使用 client
而不是 Client
。
当您执行 {{ $person->client }}
时,它具有加载该客户关系的副作用,因此可以使用它。
加载关系时,您应该使用函数的名称,确切地说,它负责建立这些关系。