【发布时间】:2015-11-16 21:02:45
【问题描述】:
在我看来,我有一个非常奇怪的行为。我有一个名为“access.blade.php”的父视图和一个名为“survey.blade.php”的子视图。
我在父视图中实例化了 2 个空数组。
我在子视图中填充它们,但是当我在包含子视图之后将它们 var_dump 在父视图中时,我的 var 为空...
这里是父视图:
@extends('template')
@section('title')
Compile result
@stop
@section('content')
<div id="access" class="container-fluid main-content">
<div class="row">
<div class="col-xs-6 col-md-push-3 col-xs-push-3">
<div class="page-title white-text text-center">
<h1>Access Report</h1>
</div>
<div class="widget-container fluid-height clearfix">
<?php
$session = Sessions::find($params['session_id']);
$userNotSeen = [];
$userSeen = [];
?>
<div class="heading">
<button class="btn btn-success btn-xl pull-right" role="button" data-toggle="modal" data-target="#complianceModal">Compliance</button>
Access Report for
{{ isset($result->content->display_name) ? $result->content->display_name : $result->content->title }}
<p>
Journey: {{ $session->location_id != null ? $session->location->city : $session->place }}
</p>
</div>
<div class="row text-center"></div>
<div class="row">
<div class="col-sm-offset-1 col-sm-10">
@if($result != null)
@if($result->content_type == 1)
@include('contents.partials.access.tasklist')
@elseif($result->content_type == 2)
@include('contents.partials.access.resources')
@elseif($result->content_type == 3)
@include('contents.partials.access.survey')
@elseif($result->content_type == 4)
@include('contents.partials.access.feedback')
@elseif($result->content_type == 5)
@include('contents.partials.access.memo')
@elseif($result->content_type == 6)
@include('contents.partials.access.gear')
@elseif($result->content_type == 7)
@include('contents.partials.access.sinsim')
@elseif($result->content_type == 8)
@include('contents.partials.access.changr')
@endif
@else
<p class="text-center">{{ $errors }}</p>
@endif
<pre>
{{ var_dump($userNotSeen) }}
</pre>
<pre>
{{ var_dump($userSeen) }}
</pre>
</div>
</div>
</div>
</div>
</div>
</div>
@include('contents.partials.modal')
@stop
这是我的子视图
<table class="table">
<thead>
<tr>
<th>Name</th>
<th class="text-center">Viewed</th>
<th class="text-center">Submitted</th>
<th class="text-center">Personnal Results</th>
</tr>
</thead>
<tbody>
@if(isset($result->data))
@forelse($result->data as $key => $value)
<tr {{ $value->view == 0 ? 'class="notyetseen"' : ''; }}>
<td>{{ $value->fullname }}</td>
<td class="text-center">{{ $value->view == 0 ? 'No' : 'Yes' }}</td>
<td class="text-center">{{ $value->done == 0 ? 'No' : 'Yes' }}</td>
<td class="text-center">
<a href="/manage/{{ $params['session_id'] }}/content/{{ $params['content_id'] }}/{{ $params['content_type'] }}/access/{{ $key }}" class="btn btn-sm btn-success">Get results</a>
</td>
</tr>
<?php
if($value->view == 0) {
array_push($userNotSeen, $key);
} else {
array_push($userSeen, $key);
}
?>
@empty
<tr><td colspan="3" class="text-center">{{ $errors }}</td></tr>
@endforelse
@else
<tr><td colspan="3" class="text-center">No participants for this journey</td></tr>
@endif
</tbody>
</table>
我知道它为什么不起作用:可能父视图在子视图之前完全加载,所以我的 var 尚未填充。
如果是这样,有什么解决办法吗?
【问题讨论】: