表单初始化
<h1>表单初始化</h1>
<p>通过<code>Form::resolving</code>方法设置的回调函数会在<code>Dcat\Admin\Form</code>类被实例化时触发;</p>
<p>通过<code>Form::composing</code>方法设置的回调函数会在<code>render()</code>方法被调用时(渲染页面时)触发;</p>
<p>开发者可以在这两个事件中改变<code>Form</code>的一些设置或行为,比如需要禁用掉某些操作,可以在<code>app/Admin/bootstrap.php</code>加入下面的代码:</p>
<pre><code class="language-php">use Dcat\Admin\Form;
Form::resolving(function (Form $form) {
$form-&gt;disableEditingCheck();
$form-&gt;disableCreatingCheck();
$form-&gt;disableViewCheck();
$form-&gt;tools(function (Form\Tools $tools) {
$tools-&gt;disableDelete();
$tools-&gt;disableView();
$tools-&gt;disableList();
});
});</code></pre>
<p>这样就不用在每一个控制器的代码中来设置了。</p>
<p>如果全局设置后,要在其中某一个表单中开启设置,比如开启显示<code>继续编辑</code>的checkbox,在对应的实例上调用<code>$form-&gt;disableEditingCheck(false);</code>就可以了</p>