多对多的关系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.
答
代表汉斯Maeier以上,我会后他的答案,因此它可以被标记为回答和帮助CFWheels社会上的计算器。
包括= “righthaspath(路径)” 将工作做
希望帮助的人寻找这一点。
谢谢, 迈克尔。
include =“righthaspath(path)”将完成工作 – 2012-04-04 13:17:38
想要将答案张贴为答案,以便读者更清楚吗? – 2012-04-17 20:44:06