Как вставить новую переменную в представление laraadmin
У меня есть для каждого цикла на мой взгляд, я хочу проверить, если цель равна некоторому значению и вставить другое значение я`
@foreach ($modules as $module)
@if ($module->name === "h_car_positions") <?php $module->name = "history_car_positions" ?>
@else <?php $module_name = $module->name; ?>
@endif
<tr>
<td>{{ $module->id }}</td>
<td><a href="{{ url(config('laraadmin.adminRoute') . '/modules/'.$module->id) }}">{{ $module->name }}</a></td>
<td>{{ $module->name_db }}</td>
<td>{{ Module::itemCount( $module_name ) }}</td>
<td>
<a href="{{ url(config('laraadmin.adminRoute') . '/modules/'.$module->id)}}#fields" class="btn btn-primary btn-xs" style="display:inline;padding:2px 5px 3px 5px;"><i class="fa fa-edit"></i></a>
<a href="{{ url(config('laraadmin.adminRoute') . '/modules/'.$module->id)}}#access" class="btn btn-warning btn-xs" style="display:inline;padding:2px 5px 3px 5px;"><i class="fa fa-key"></i></a>
<a href="{{ url(config('laraadmin.adminRoute') . '/modules/'.$module->id)}}#sort" class="btn btn-success btn-xs" style="display:inline;padding:2px 5px 3px 5px;"><i class="fa fa-sort"></i></a>
<a module_name="{{ $module->name }}" module_id="{{ $module->id }}" class="btn btn-danger btn-xs delete_module" style="display:inline;padding:2px 5px 3px 5px;"><i class="fa fa-trash"></i></a>
</td>
</tr>
@endforeach
я получаю неопределенную переменную для этой переменной:$module_name
2 ответа
Решение
@foreach ($modules as $module)
@php
$module_name = $module->name;
switch ($module_name) {
case "H_car_positions":
$module_name = "history_car_positions";
break;
default:
$module_name = $module->name ;
$module_count =Module::itemCount( $module_name );
}
@endphp
<tr>
<td>{{ $module->id }}</td>
<td><a href="{{ url(config('laraadmin.adminRoute') . '/modules/'.$module->id) }}">{{ $module->name }}</a></td>
<td>{{ $module->name_db }}</td>
<td>{{ $module_count }}</td>
Вы смешиваете синтаксис блейда с php, поэтому вы должны сделать это следующим образом:
@php
if($module->name == "h_car_positions"){
$module_name = "history_car_positions";
} else {
$module_name = $module->name;
}
@endphp