#cakephp #cakephp-1.3
#cakephp #cakephp-1.3
Вопрос:
Я передаю следующую переменную tagsCount
из моего контроллера в просмотр:
$this->set('tagsCounts', $this->Tag->query('
(
SELECT
t.id, t.sk_name, 0 AS count
FROM
tags t
WHERE
t.id NOT IN (
SELECT tag_id
FROM video_tags vt
)
)
UNION
(
SELECT
t.id, t.sk_name, COUNT( * ) as count
FROM
videos v
JOIN
video_tags vt ON ( v.id = vt.video_id )
JOIN
tags t ON ( t.id = vt.tag_id )
GROUP BY
t.id
ORDER BY
COUNT( * ) asc
)'
));
И в представлении я хочу выполнить итерацию через эту переменную. Я использую этот код:
<?php for($z = 0; $z < sizeof($tagsCounts); $z ): ?>
<?php echo $tags[$z]['Tag']['count'];?>
<br>
<?php endfor; ?>
Но это вызывает эту ошибку:
Строгие стандарты: нестатический метод String::insert() не должен вызываться статически, предполагая, что $this из несовместимого контекста в /storage/hotweb/admin.porner.sk/cake/libs/debugger.php в строке 673
а также
Примечание (8): неопределенный индекс: количество [APP/views/tags/index.ctp, строка 20]
Не могли бы вы помочь мне, как выполнить итерацию по этой переменной и напечатать только столбец с именем «count»?
Комментарии:
1. Пожалуйста, всегда указывайте свою точную версию CakePHP и соответствующим образом помечайте свой вопрос! ps. почему вы не используете CakePHP ORM и не избегаете таких странных запросов, что избавило бы вас от многих проблем?
2. Я использую версию 1.3.8. И я жестко запрашиваю эту модель, потому что мне было довольно сложно выбрать, и я не знал, как использовать ORM для извлечения этих данных.
3. можете ли вы вставить var_dump($tags) сюда?