通过这个SO线程阅读我已经读过我可以创建一个新的宏来创建自定义表单输入.
我对Laravel开发来说是一个全新的(大惊喜),对于这么小的事情来说似乎有点过分.是否有一种"更简单"的方式来做这样的事情:
刀片模板
{!!Form::label('firstName', 'First Name*') !!} {!! Form::text('firstName', null, ['class'=>'required']) !!}
HTML
或者,这是一个我只是编写html,然后使用表单服务来创建输入的情况?
感谢您的耐心和洞察力.
这样做的简单方法是
{!! Form::label('labelFor','labelText',[],false) !!}
最后一个参数是$ escape_html,默认值为"true".
在Form
类属性将始终被转义(他们是在Laravel 4,仍然是与Laravel集体的5+支持),因此HTML是不接受.由于您的需求如此简单,我建议您只编写纯HTML.
如果你想要矫枉过正,你可能会这样AppServiceProvider.php
:
Form::macro('labelWithHTML', function ($name, $html) { return ''; });
然后,在您的Blade模板中:
{!! Form::labelWithHTML('firstName', 'First Name*') !!} {!! Form::text('firstName', null, ['class'=>'required']) !!}