首页 > 解决方案 > 什么会导致 laravel 刀片模板无法处理?

问题描述

我正在使用 Laravel 5.1 我有一个以前运行良好的页面模板。我可以点击我的路线,页面将按预期呈现。在某些时候,页面开始只显示刀片模板中包含的文本,而不是呈现我的页面。据我所知,我的路由文件、控制器或刀片没有任何变化。有什么已知会导致这种情况发生吗?我尝试过更新权限,使用不同的方法来调用视图并一起创建一个新的视图文件。

路线:

Route::group(['prefix' => '/admin'], function() {
Route::group(['prefix' => '/reactor-rules'], function() {
    Route::get('/visual-rules/{track_id?}', [
        'as' => 'broker_visual_reactor_rules',
        'uses' => 'ReactorRulesController@visualRules'
    ]);
});

});

ReactorRulesController@visualRules:

public function visualRules(IReactorTrackDAO $reactorTrackDAO, $id = 0)
{
    $export = new ReactorExport();
    
    $tracks = $export->getReactorTracks();
    if ($id == 0) {
        $eventsArray = [];
    }
    else {
        $eventsArray = $export->getArrayForTrack($id);
    }
    return $this->renderView('enterpriseBroker::reactor-rules.visual-rules', compact('eventsArray','tracks','reactorTrackDAO'));
}

我的刀片:

    @extends($layout)
{{ SEO::setPageTitle(trans('enterpriseBroker::reactorRules.title'), false) }}
@section('content')
    <br>
    <br>
    @if(empty($eventsArray))
        <p>Please select a track below to view/export rules.</p>
        @foreach($tracks as $track)
            <a href="{{url().'/admin/visual-rules/'.$track->id}}">{{$track->name}}</a><br>
        @endforeach
    @else
    @foreach($eventsArray as $track => $events)
        <h4>{{$track}}</h4>
        <a href="{{url().'/admin/visual-rules/'.$reactorTrackDAO->findByName($track)->id.'/download'}}" class="btn btn-primary" download>Export</a><br>
        @foreach($events as $id => $event)
        @if (count($event['rules']) > 0)
            <div id="{{$track.'-'.str_replace(' ','_',$event['name'])}}">
                <div class="col-lg-12">
                <hr/>
                    <div class="col-lg-2">
                        <h4>{{$event['name']}}</h4>
                    </div>
                    <div class="col-lg-10  border border-primary">
                        @foreach($event['rules'] as $ruleId => $rule)
                            <h5>{{$rule['name']}}</h5>
                            <div class="col-lg-6">
                                <h6>Conditions to be met:</h6>
                                @foreach($rule['conditions'] as $condition)
                                    <p>{{$condition}}</p>
                                @endforeach
                            </div>
                            <div class="col-lg-6">
                                <h6>Actions to run:</h6>
                                @foreach($rule['actions'] as $action)
                                    <p>{!!$action!!}</p>
                                @endforeach
                            </div>
                        @endforeach
                    </div>
                </div>
            </div>
        @endif
        @endforeach
    @endforeach
    @endif
@endsection
@section('scripts')
@endsection

它最初是这样出现的: 原始截图

这是它当前的显示方式: 当前截图

标签: phplaravellaravel-blade

解决方案


我通过创建一个新的刀片文件解决了这个问题,将旧文件的内容粘贴到其中并将我的控制器指向新视图。我不确定这是如何解决问题的。


推荐阅读