[英]fetch records from databse and generate tree automatically
我有三张桌子:
部 :
指定 :
部门指定:
DesignationID和ReportTo是表格指定的外键,表示特定指定报告给特定指定。 即经理 (指定)向首席执行官报告(也是指定)
现在我要生成一棵树,就像......
我手动输入显示在树上方的条目。 即
现在我的问题是,我无法以自动生成此树的方式编写函数。
简而言之,从数据库中获取记录后,我想生成如上所示的树。
任何方案?
注意:树的水平不固定,可能不受树木的限制
它是Java,因此您可以根据需要将树形成为深层。
从UI呈现中将查询与树的总体分开,您将没有问题。 查询数据库,填充树并将其提供给要呈现的UI。
如果您尝试将一个部件与另一个部件混合,则会出现问题。
您可以使用这样的Tree结构 ,然后从查询中填充它。
然后,您将有不同的选择,例如:
1)您将树转换为JSON并使用jQuery递归迭代它 ;
2)你直接用Java(递归)迭代它,构建输出服务器端(假设一个包含你的HTML的大字符串)。 然后你只需将结果注入页面(由于服务器和客户端之间的耦合,这不是那么好)
等等...
我想你可以用php来绘制这棵树。 例。
编写连接查询以选择要排到<li>
while(!empty($row))
{
echo'<li><ul>$row[designation name]';
while(!empty($next))
{echo'<li><ul>$next[designation name]';
//next sentence must be a select query }
echo'</ul></li>'
}
echo'</ul><li>' }<li>
while(!empty($row))
{
echo'<li><ul>$row[designation name]';
while(!empty($next))
{echo'<li><ul>$next[designation name]';
//next sentence must be a select query }
echo'</ul></li>'
}
echo'</ul><li>' }
这不是你的答案,而是一个可以说出逻辑的提示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.