多对多的关系cfwheels内加入

问题描述:

我有cfwheels几个问题(N:M relationsship)多对多的关系cfwheels内加入

这里我的数据库架构

rights  righthaspath   path   
-id -------| -id    --> -id 
-role  -->-rightid (FK)  | -url 
       -pathid (FK)------| 

我的模型 /Models/Right.cfc

<cffunction name="init"> 
    <cfset hasMany(name="righthaspath",shortcut="path")> 
    <cfset nestedProperties(associations="righthaspath")> 
</cffunction> 

/Models/Path.cfc

<cffunction name="init"> 
    <cfset hasMany(name="righthaspath")> 
</cffunction> 

/Models/Righthaspath.cfc

<cffunction name="init"> 
    <cfset belongsTo("path")> 
    <cfset belongsTo("right")> 
</cffunction> 
在我的控制器

<cfset tmp= model("right").findall(include="righthaspath")> 

所以

,从cfhweels sql语句是:

SELECT rights.id,rights.Role,righthaspaths.id AS righthaspathid,righthaspaths.pathID,righthaspaths.rightID FROM rights 
LEFT OUTER JOIN righthaspaths ON rights.id = righthaspaths.rightID 

,但我想在这三个SQL语句像这样的桌子

SELECT 
    * 
FROM 
    rights 
    INNER JOIN righthaspaths on rights.id=righthaspaths.rightID 
    INNER JOIN paths on righthaspaths.pathID=paths.id 

可以帮忙吗? PS:我不能包括路径,例如,我不知道路径。

<cfset tmp= model("right").findall(include="righthaspath,path")> 

,因为我得到一个错误

An association named path could not be found on the right model. 
+0

include =“righthaspath(path)”将完成工作 – 2012-04-04 13:17:38

+0

想要将答案张贴为答案,以便读者更清楚吗? – 2012-04-17 20:44:06

代表汉斯Maeier以上,我会后他的答案,因此它可以被标记为回答和帮助CFWheels社会上的计算器。

包括= “righthaspath(路径)” 将工作做

希望帮助的人寻找这一点。

谢谢, 迈克尔。