问题
使用刀片渲染视图时,我调用一个生成表单的函数(使用Laravel Form Builder)。这一切都像一个魅力!对于我的项目,我需要一个自定义表单和一个自定义表单字段。经过一番疑惑也取得了成功,仍然没有问题!现在我需要一种方法将链接推送到父视图中的列表。
parentview.blade.php
<div class="panel-body">
<ul class="wizard_steps">
@stack('category_steps')
</ul>
{!! form($form) !!}
</div>
customForm.blade.php
@push('category_steps')
<li>
<a href="#{{$options['real_name']}}">
<span class="step_no"></span>
<span class="step_descr">
<?php if ($showLabel && $options['label'] !== false && $options['label_show']): ?>
{{ $options['label'] }}
<?php endif; ?>
</span>
</a>
</li>
@endpush
<div id="#{{$options['real_name']}}">
{!! form_rest($options['field_form']) !!}
</div>
这就是问题所在。列表项未添加到父级的堆栈中。
重现的步骤
我已将问题缩小到{!! form($form) !!}
。所以要重现:
home.blade.php
并粘贴文字:home.blade.php
<?php
/** @return string */
function test()
{
return view('test')->render();
}
?>
@stack('moreTest')
{!! test() !!}
test.blade.php
并粘贴文字:test.blade.php
@push('moreTest')
<p>This is not pushed</p>
@endpush
有人知道如何解决这个问题吗?
谢谢!
P.S.:使用laravel 5.4.23