父级刀片模板:
@extends('layouts.master')
@section('content')
<div class="panel-body">
@if(count($errors))
@include('common.errors')
@endif
{!! Form::model($entry, ['method' => $method, 'class' => 'form-horizontal', 'route' => [$route]]) !!}
@section('fields')
@foreach (['title', 'url', 'content', 'meta_tags', 'meta_description', 'is_active'] as $field)
@include('entries.fields.' . $field)
@endforeach
@show
<div class="form-group">
<div class="col-sm-offset-3 col-sm-6">
@section('submit')
{!! Form::submit('Добавить', ['class' => 'btn btn-default']) !!}
@show
</div>
</div>
{!! Form::close() !!}
</div>
@endsection
儿童模板:
@extends('entries.create')
@section('title')
Добавить статью / {{ config('site.site_name') }}
@endsection
@section('fields')
@foreach ([
'entries.fields.title',
'entries.fields.url',
'articles.fields.description',
'entries.fields.content',
'entries.fields.meta_description',
'entries.fields.is_active',
'articles.fields.enable_comments',
'articles.fields.show_on_main',
'articles.fields.rank',
] as $field)
@include($field)
@endforeach
@endsection
模型绑定适用于父模板,但在子模板中不起作用。
例如,我有enable_comments复选框:
{!! Form::label('enable_comments', 'Включить комментарии', ['class' => 'col-sm-3 control-label']) !!}
<div class="col-sm-6">
{!! Form::checkbox('enable_comments', null, null, ['class' => 'checkbox']) !!}
</div>
</div>
它始终未经检查,而$ entry-&gt; enable_comments === true
我不知道为什么会这样。也许任何人都可以通过代码找到问题。
提前感谢您的帮助。
答案 0 :(得分:0)
问题是表单模型绑定仅在当前模板(包含文件)内部工作,但不填充子temlates中的值。所以唯一的解决方案是在子模板中再次编写表单start({!! Form :: model(...)