我正在使用这样的结构来支持从上层相关表向下移动到较低级别表。通常,想法是在当前视图中编辑记录,或者通过使用扩展器列列出同一视图的子记录。
从结构上讲,它是客户 - >客户产品 - >产品详情 - >产品活动。
Customer MVCgrid ok
edit MVCform (via expander column) ok
view products MVCgrid (via expander column) ok
edit a product MVCform pathfinder error
view products details MVCGrid pathfinder error
edit product details MVCform
view product activity MVCGrid
此结构在外层工作。我可以编辑客户记录或按预期查看客户产品。当我点击“编辑产品”(MVCform)或“查看产品详细信息”(MVCgrid)时,我收到了一个路径查找器错误:
PathFinder_Exception
无法包含cvCustProducts \ cvuidcontrol \ cvuiddetails.php
“cvuiddetails”是声明为“function page_cvuiddetails()”的函数名称
我检查并重新检查了我能想到的一切。在我看来,函数名称不可用,并且正在调用pathfinder以找出页面“cvuiddetails”所在的位置并且显示为空。
任何建议都将不胜感激。
===== [溶液] ======================================= =====
十分钟后.........
阿哈!!!!
以下是几分钟前我刚刚发布的问题的解决方案,我希望其他人都觉得这很有用:
嵌套函数时,在函数名前加上调用函数的名称
function page_cvuidcontrol()包含调用“cvuiddetails”的扩展器列。
原始功能名称:功能page_cvuiddetails()
新功能名称:function page_cvuidcontrol_cvuiddetails()
答案 0 :(得分:0)
如果您有文件page/cvuidcontrol.php
,则可以在该文件中定义page_cvuiddetails()函数。这称为子页面。
但是,请注意并确保不要将功能命名为类名。这是一个非常不幸的巧合,几次给了我一些问题。
class page_details {
function page_details(){
}
}
这不起作用,因为PHP认为此函数是构造函数。