分类和输出类别和子类别

Lee*_*Lee 2 mysql coldfusion

我正在开发一个相当基本的菜单系统,所有类别都保存在一个表中,子类别标记在字段'issubcategoryof'中.在输出级别,具有子类别的类别没有"链接"字段的值(单击类别名称会触发子类别的视图),但所有子类别都具有链接值(当然,没有子类别的类别)有一个链接值).为避免疑义,子类别仅为1级(因此类别>子类别).

查询和输出在正确显示类别和子类别名称的意义上工作,但是由于某种原因,"链接"值未被传递给子类别.我的意思是输出时#link#旁边#subcatheader#是空的,但应该有一个值.

这是我目前的查询和输出;

<cfquery name="getnav">
SELECT p.navID AS PrimaryID, p.catheader, p.navsort, p.link, c.navID AS SubCategoryID, c.subcatheader, c.link
FROM  sitenav p 
LEFT JOIN sitenav c ON p.navID = c.IsSubcatOf 
WHERE  p.isSubcatOf = 0
ORDER BY p.navsort ASC
</cfquery>

<cfoutput query="getnav" group="catheader">
    <div class="sidebar-menu">
       <cfif link NEQ ''>
          <a href="#link#">#catheader#</a>
       <cfelse>
          #catheader#
       </cfif>
       <div class="expand"></div>
    </div>
    <cfif link EQ ''> 
        <div class="sub-menu">
        <ul>
            <cfoutput>
               <li><a href="#link#">#subcatheader#</a></li>
            </cfoutput>
        </ul>
        </div>
    </cfif>
</cfoutput>
Run Code Online (Sandbox Code Playgroud)

我已经盯着这一段时间了,好像我错过了一些非常明显的东西,但现在却暗示着我!任何指针最受欢迎!

ghe*_*ghy 6

我在评论中这样做,但我没有足够的代表.点.无论如何,你有两个"链接"字段,分别用于p和c.也许你需要给他们不同的名字?