Я использую специальный помощник laravel для печати данных в моем файле лезвия представления. Я передаю внешний ключ из таблицы настраиваемому помощнику, и настраиваемый помощник проверяет внешний ключ и возвращает связанные с ним данные. Недавно мой коллега предположил, что использование специального помощника в foreach l oop файла представления - плохая идея. У меня не было проблем с производительностью, однако мой коллега предположил, что при загрузке на сервер AWS каждый запрос к базе данных будет платным. Это мой код:
<?php
foreach($data as $key => $details) { ?>
<td>{{ helper::getstatename($details>stateid)}}</td>
<? }
?>
Это вспомогательный файл:
public static function getstatename($id) {
$getstatename = states::select('statename','id')->where('id',$id)->first();
if($getstatename){
return $getstatename->statename != '' ? $getstatename->statename : '';
} else {
return false;
}
}
Мой контроллер:
public function index() {
$locations = DB::table('locations')->select('locations.id','locations.locationname','cityid','stateid','countryid','locations.status')
->where('locations.status','!=',2)->orderBy('id','desc')->get();
return view('location/listlocation',['data'=>$locations]);
}
Итак, я хочу знать, является ли эта практика плохого использования вспомогательного файла? Или я должен использовать левое соединение и распечатать эти данные?