modx-pro / xPoller

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Got unknown column error after install

sdrenth opened this issue · comments

When debugging the xPoller snippet I got the following mysql error:
Unknown column 'DISTINCT xpAllAnswers.id' in 'field list'

$q = $modx->newQuery('xpOption');
$q->where(array('qid' => $id));
$q->select('`xpOption`.`id`, `xpOption`.`qid`, `xpOption`.`option`, `xpOption`.`rank`,
            `xpOption`.`right`, `xpQuestion`.`text`, COUNT(DISTINCT `xpAnswer`.`uid`) as `votes`,
            COUNT(`DISTINCT xpAllAnswers`.`id`) as `total`');
$q->leftJoin('xpQuestion', 'xpQuestion', array('`xpOption`.`qid` = `xpQuestion`.`id`'));
$q->leftJoin('xpAnswer',   'xpAnswer',   array('`xpAnswer`.`oid` = `xpOption`.`id`'));
$q->leftJoin('xpAnswer',   'xpAllAnswers', array('`xpAllAnswers`.`qid` = `xpQuestion`.`id`'));
$q->groupby('`xpOption`.`id`');
$q->sortby('`xpOption`.`id`', 'ASC');
$q->prepare();

print "<pre>";
echo $q->toSQL();
print "</pre>";
exit;

Должно быть вот так

...
COUNT(DISTINCT `xpAllAnswers`.`id`) as `total`');
...

Должно быть вот так

...
COUNT(DISTINCT `xpAllAnswers`.`id`) as `total`');
...

Спасибо, исправил, выпустил новую версию

Ну, раз так оперативно реагируешь, то почему до кучи не исправлена ошибка, о которой здесь же писали, - ...map.. файл, phptype = string, a не text.

Это тоже исправлено.

И, надеюсь, последнее. Чанк из коробки tpl.xPoller.form.outer содержит ... <form role="form” action=“[[~[[*id]]]]” method="post" class="xPolls”> … Не знаю как на других инстансах, на моем modx эта конструкция не имеет начального слета, то есть, если мой вызов твоего сниппета идет на странице www.domain.com/test http://www.domain.com/test, то форма сабмитится вот сюда www.domain.com/test/test http://www.domain.com/test/test То есть, из коробки твой компонент не завелся по трем пунктам. Допилил, конечно, но не по феншую в паблике так держать.

А это похоже, что у тебя не указан тег <base>.