我在管理区域(自定义模块)中有一个简单的 html 按钮,我需要“启动”一个模型函数并将一个变量传递给它。
哪个是最好的方法?
调度一个事件并观察它?还有其他更简单的方法吗?
我真的不明白你的问题的重点,但是:
这里不需要使用 dispatchEvent ,除非你想让其他开发者在你的代码中注入一些代码。
当您单击按钮时,您可以将操作发布(获取或使用 ajax)到控制器,然后从您的控制器中调用您的模型函数。
最好的方法是创建你自己的控制器和动作。
当您单击按钮时,将请求发送到该控制器和带有参数(POST 或 GET)的操作,并在操作中添加以下内容:
$param = Mage::app()->getRequest()->getParam('some_param');//get the parameter from GET
//or
//$param = Mage::app()->getRequest()->getPost('some_param');//get the parameter from POST
Mage::getModel('some/model')->doSomeAction($param);
$this->_redirectReferer();