我有一个我需要在CakePHP中访问的Oracle包。我试图确定实现调用此函数的代码的最佳方法。我需要将变量从UI传递给被调用的过程。我希望能够在提交到包之前使用该模型进行字段验证。这是一个非常具体的程序调用:
begin SCHEMA.package.function_name(vars); end;
与此同时,包中没有标准的$ this-> save()或$ this-> find()。
有没有人有CakePHP经验?或者任何实施建议?我应该把它单独放在一个模型中吗?
答案 0 :(得分:0)
好吧,在没有回应之后我本周做了一些挖掘,我想我有一个很好的解决方案。我实际上认为它比实际情况更复杂。
设置模型以指向您创建的包。在包中可能有多个功能。因此,该模型将包含应用程序所需的所有软件包功能。
以下是我的模型:
<?php
class {PACKAGENAME} extends AppModel {
var $name = {PACKAGENAME};
var $useTable = false;
function {PACKAGE_METHOD}() {
return $this->query('begin SCHEMA.PACKAGE.FUNCTION(); end;');
}
}
将{PACKAGENAME}替换为Oracle包的名称。其余的应该是自我解释的。当然,您也可以配置函数来处理变量。