В Laravel макеты / шаблоны для данных - PullRequest
0 голосов
/ 16 апреля 2020

Я новичок в laravel, и я немного потерян. Я ищу в Google, прежде чем спрашивать, и я не нашел об этом (вероятно, потому что я не знаю правильных терминов, чтобы спросить).

У меня есть этот код

$query=DB::Table("users")->select("*");

echo "<table>";
foreach($query->cursor() as $o)
{   
    echo "<tr>";
    echo "<td><td>$o->UserId</td><td>$o->Name</td><tr>";
    echo "</tr>";
}
echo "</table>";

Я хотел бы знать если в laravel есть что-то (функция, класс или что-либо еще), чтобы абстрагироваться от кода

Идея состояла бы в том, чтобы поместить элемент html в другой файл (например, представление )

<tr><td>{{$o->id}}</td><td>{{$o->username}}</td></tr>

и вызовите из моего кода что-то вроде

foreach($query->cursor() as $o)
{   
    RenderView("dataview",$o);
}

или что-то в этом роде.

Я знаю, что описал функцию: P, но у меня вопрос: ... Laravel шаблоны блейдов только для целых страниц, или их можно использовать для визуализации повторяющихся частей кода?

Спасибо.

1 Ответ

2 голосов
/ 16 апреля 2020

Создайте представление ресурсов / views / partials / item.blade. php

из контроллера, если вам нужно представление

$html = view('partials.item')->render();

из шаблона блейда

// your actual blade view
$query=DB::Table("users")->select("*");

<table>
@foreach($query->cursor() as $o)
   @include('partials.item', ['o' => $o])
@endforeach
</table>
// partials.item
<tr>
   <td> {{ $o->UserId }}</td>
   <td> {{ $o->Name }}</td>
</tr>
...