В демонстрационных целях, скажем, у меня есть следующий запрос:
SELECT a_label, aID, b_label, bID, c_label, cID, d_label, dID, orderByA, orderByB, orderByC
FROM table
ORDER BY orderByA, orderByB, orderByC
На стороне дисплея можно сортировать LI, и их соответствующие позиции сохраняются в соответствующем столбце таблицы.
В моем выводе я зацикливаюсь на данных и должен использовать <cfoutput query="qryName" group="aID">
, а затем подгруппа использует <cfoutput group="bID">
с другой подгруппой, использующей <cfoutput group="cID">
и т. Д.
Моя проблема в том, что я не могу понять, как должен выглядеть запрос, чтобы мои результаты были сгруппированы правильно. Нужно ли группировать в моем запросе sql или оставить его в коде cfm? А как насчет заказа по?
Я предполагаю, что я спрашиваю, как вы узнаете, когда группировка относится к запросу против кода?
ОБНОВЛЕНО С НЕКОТОРЫМ КОДОМ CFM
<cfoutput query="#aw#" group="cID">
<ul class="listItem pItem">
<cfoutput group="pID">
<li class="listItem pTitle" data-cid="#aw.cID#" data-pid="#aw.pID#" data-wid="#aw.wID#">
<i class="glyphicon glyphicon-chevron-right rotate wToggle"></i> <input type="checkbox" name="p" class=""> #aw.pLabel#
<ul class="listItem wItem hide">
<cfoutput group="wID">
<li class="listItem wTitle" id="w_#aw.cID#_#aw.pID#_#aw.wid#_#aw.woaid#">
<i class="glyphicon glyphicon-chevron-right rotate dToggle font-blue-madison"></i> <input type="checkbox" name="w" class=""> #aw.wLabel#
<ul class="listItem dItem hide">
<cfoutput>
<li class="listItem dTitle" id="d_#aw.cID#_#aw.pID#_#aw.wID#_#aw.dID#_#aw.woaid#">
<input type="checkbox" name="d" class="child"> #aw.dID#
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>
</li>
</cfoutput>
</ul>
</cfoutput>
Пользователь может перетаскивать элементы из одного раздела в другой раздел, но только если разделы одного уровня. Например, dItem
можно переместить только в другой контейнер с dItem
. Аналогично, wItem
можно переместить только на другой wItem
и т. Д.
Я работаю над запросом sql и обновлю этот вопрос. Я начинаю с одного уровня за раз вместо всего запроса в одно и то же время (делая это размером с кусочек).
UPDATE
Я думаю, что нашел проблему, плохие данные. Некоторые из элементов не имеют значения в соответствующих orderBy*
, поэтому сгруппированные элементы находятся в неправильном порядке в подгруппе. Значение по умолчанию для вновь добавленных элементов было NULL
, но я думаю, что это должно быть другое значение. Существует ли рекомендуемое значение по умолчанию для sortby
столбцов?
ОБНОВЛЕНИЕ ii
Я нашел этот вопрос SO, Вставить и установить значение с max () + 1 задачами , которые я мог бы реализовать при добавлении новых элементов. Таким образом, он появится в конце списка.