Реализовать приложение на Yii2, mvc
Вот задание:
1. Создать в БД таблицу Товаров и добавить туда данные +
2. Создать модель в проекта на таблицу товаров +
3. Создать контроллер Product +
4. Добавить 1 экшина:
listproduct - вывод списка товаров +
5. Для экшина создать представление +
6. Добавить постраничный вывод списка товара +
7. Добавить для каждой записи из п.4-6 ссылку на страницу товара
8. Добавить экшин и представление для отображение одного товара. В представлении добавить возврат к списку товаров.
9. Подключить URL-manager +
Это все сделал, но не понимаю пункт 7 и 8, как быть с этими 2 пунктами, нужно для каждого товара создавать отдельную страницу или можно url? как отобразить 1 товар и
как должен выглядеть переход к одному товару и к списку товаров.
ProductController.php:
<?php
namespace app\controllers;
use app\models\Product;
use yii\web\Controller;
class ProductController extends Controller
{
public function actionListproduct() //постраничный вывод
{
$query = Product::find()->
select('id, name, category, price, quantity')->
orderBy('price ASC');
$page = new \yii\data\Pagination
(
[
'totalCount' => $query->count(),
'pageSize' => 3
]
);
$products = $query->offset($page->offset)->limit($page->limit)->all();
return $this->render('products', compact('products', 'page'));
}
}
?>
Представление products.php:
<table class="table">
<thead class="thead-dark">
<tr>
<th scope="col">Id</th>
<th scope="col">Название</th>
<th scope="col">Категория</th>
<th scope="col">Цена</th>
<th scope="col">Количество</th>
</tr>
</thead>
<tbody>
<?php foreach($products as $item):?>
<tr>
<th scope="row"><?=$item->id?></th>
<td><?= $item->name?></td>
<td><?= $item->category?></td>
<td><?= $item->price?></td>
<td><?= $item->quantity?></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
<?= \yii\widgets\LinkPager::widget(['pagination' => $page]) ?>
