Подскажите пожалуйста где ошибка
<?php
$mainImg = $product->getImage();
?>
<div class="col-sm-9 padding-right">
<?php if( !empty($hits) ): ?>
<div class="features_items"><!--features_items-->
<h2 class="title text-center">Хиты продаж</h2>
<?php foreach ($hits as $hit): ?>
<div class="col-sm-4">
<div class="product-image-wrapper">
<div class="single-products">
<div class="productinfo text-center">
<?php $mainImg = $product->getImage(); ?>
<?= Html::img($mainImg->getUrl(), ['alt' => $product->name])?>
<?= Html::img("@web/images/products/{$hit->img}", ['alt' => $hit->name]) ?>
<h2><?= $hit->price?> руб</h2>
<p><a href="<?= \yii\helpers\Url::to(['product/view', 'id' => $hit->id]) ?>"><?= $hit->name?></a></p>
<a href="<?= \yii\helpers\Url::to(['cart/add', 'id' => $hit->id]) ?>" data-id="<?= $hit->id?>" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>В корзину</a>
</div>
<?php if($hit->new): ?>
<?= Html::img("@web/images/home/new.png", ['alt' => 'Новинка', 'class' => 'new']) ?>
<?php endif;?>
<?php if($hit->sale): ?>
<?= Html::img("@web/images/home/sale.png", ['alt' => 'Распродажа', 'class' => 'new']) ?>
<?php endif;?>
</div>
<!-- <img src="images/home/new.png" class="new" alt="" /> -->
<!-- <img src="images/home/sale.png" class="new" alt="" /> -->
</div>
</div>
<?php endforeach;?>
</div><!--features_items-->
<?php endif; ?>
Ошибку славливаю здесь:
<?php $mainImg = $product->getImage();?>
Контроллер:
<?php
namespace app\controllers;
use app\models\Category;
use app\models\Product;
use Yii;
class ProductController extends AppController{
public function actionView($id){
$id = Yii::$app->request->get('id');
$product = Product::findOne($id);
if(empty($product))
throw new \yii\web\HttpException(404, 'Данного товара не существует');
// $product = Product::find()->with('category')->where(['id' = $id])->limit(1)->one();
$hits = Product::find()->where(['hit' => '1'])->limit(6)->all();
$this->setMeta('ASV-PAGE | ' . $product->name, $product->keywords, $product->description);
return $this->render('view', compact('product', 'hits'));
}
}
Модель:
<?php
namespace app\models;
use yii\db\ActiveRecord;
class Product extends ActiveRecord{
public function behaviors()
{
return [
'image' => [
'class' => 'rico\yii2images\behaviors\ImageBehave',
]
];
}
public static function tableName(){
return 'product';
}
public function getCategory() {
return $this->hasOne(Category::className(), ['id' => 'category_id']);
}
}
Если вы хотите выводить картинки всех товаров в actionIndex() - тогда в нем сделайте
$products = Product::find()->all();
return $this->render('index', compact('products', 'hits'));
И в самом представлении делаете
<?php foreach($products as $product) { ?>
<?= $product->getImage() ?>
<?php } ?>
Либо же, если это вывод одиночного товара - тогда уберите из вида "views\category\index.php" попытку вывода картинки, и перенесите вывод в файл, который рендерится в actionView()
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Работаю на linux, делаю приложение на yii2-advanced, локальный сервер apache2
В настройках прав доступа Битрикс, раздел CRM, есть Пользователь ТЕСТ с ролью Начальник Отдела
Проблема следующаяС помощью php мне надо определить, есть ли в строке фраза "собрать минимальный пакет"