В предыдущем уроке мы связали
категории и их посты отношением hasMany
.
Давайте теперь в контроллере получим
какую-нибудь категорию:
<?php
class CategoryController extends Controller
{
public function show()
{
$category = Category::find(1);
dump($category);
}
}
?>
Вместе с категорией мы автоматически получим коллекцию постов:
<?php
class CategoryController extends Controller
{
public function show()
{
$category = Category::find(1);
dump($category->posts); // коллекция постов
}
}
?>
Давайте переберем коллекцию с постами через цикл:
<?php
class CategoryController extends Controller
{
public function show()
{
$category = Category::find(1);
foreach ($category->posts as $post) {
dump($post->title);
}
}
}
?>
Давайте теперь получим коллекцию категорий. Переберем ее циклом, для каждой категории получим коллекцию постов и также переберем ее циклом:
<?php
class CategoryController extends Controller
{
public function show()
{
$categories = Category::all();
foreach ($categories as $category) {
dump($category->name);
foreach ($category->posts as $post) {
dump($post->title);
}
}
}
}
?>
Для таблиц, созданных в предыдущем уроке получите все страны вместе с их городами.
Передайте полученные данные в представление и выведите их в виде следующей верстки:
<div>
<h2>country1</h2>
<ul>
<li>city11</li>
<li>city12</li>
<li>city13</li>
</ul>
</div>
<div>
<h2>country2</h2>
<ul>
<li>city21</li>
<li>city22</li>
<li>city23</li>
</ul>
</div>
<div>
<h2>country3</h2>
<ul>
<li>city31</li>
<li>city32</li>
<li>city33</li>
</ul>
</div>