Я новичок в Laravel и на данный момент у меня есть кусок кода в контроллере, который без цикла while
работает, он извлекает мой запрос из базы данных.Laravel и while Loop
public function dash($id, Request $request) {
$user = JWTAuth::parseToken()->authenticate();
$postdata = $request->except('token');
$q = DB::select('SELECT * FROM maps WHERE user_id = :id', ['id' => $id]);
if($q->num_rows > 0){
$check = true;
$maps = array();
while($row = mysqli_fetch_array($q)) {
$product = array(
'auth' => 1,
'id' => $row['id'],
'url' => $row['url'],
'locationData' => json_decode($row['locationData']),
'userData' => json_decode($row['userData']),
'visible' => $row['visible'],
'thedate' => $row['thedate']
);
array_push($maps, $product);
}
} else {
$check = false;
}
return response()->json($maps);
}
Я пытаюсь Переберите возвращаемые данные из $q
и использовать json_decode
на 2 ключевых пар/VAL, но я даже не могу получить это сделано правильно.
+1 надеюсь, не NIT собирание здесь, но я бы назвал модель 'Map' как каждый экземпляр представляет только 1 строку. – AbstractChaos
Я делал это, но потом обнаружил, что я часто делаю такие вещи, как «Карты :: где» («foo», «bar») -> get(); », и поэтому для кода, который я писал, это имело смысл чтобы сохранить его во множественном числе, поскольку эта модель отвечает за ВСЕ карты, то есть за таблицу карт. Хотя у вас определенно есть точка. Я думаю, это зависит от стиля типичного использования. – erapert