您好我一直在使用cakephp 1个月,我在一个正在修复的webapp中找到了这段代码。
$availableParts = $this->Line->Part->getAvailablePartsForLineWithComponentType($id, $componentType['ComponentType']['id'], $selectedParts);
Line和Part是两个模型,我不明白为什么要提到Line来调用Part模型的方法。
请帮帮我。谢谢!
答案 0 :(得分:0)
在不知道代码的上下文的情况下,我们无法分辨。因此,请提供更多信息和代码。
但从技术上讲,通过协会调用另一个模型是可以的。所以为了你的理解:这样做是可以的。但是为什么在这种情况下完成它是这个代码的前程序员的问题。
答案 1 :(得分:0)
你没有说这个代码的调用位置,但从它的格式我会假设它在lines_controller.php
的一个动作中。
如果我的假设是正确的,那么通过Part
模型在Line
模型上调用方法的原因是Line
模型将在行控制器中自动可用,使用这种获取Part
模型的方法可以节省编写代码以手动加载Part
模型。
这是一种方便,可以提高控制器的一致性,并且还可以在未调用该行代码并且不需要加载相关模型(延迟加载)的情况下节省内存。