改进代码

时间:2013-08-15 14:11:53

标签: magento

我一直在研究一个magento模块(不是因为它是一个大模块,它是我的第一个,我真的很挣扎)。我现在已经开始工作了,起初我很高兴,但现在我想通过增加代码的可重用性来改进它。

在制作我的模块时,我已经查看了其他模块以便从中学习,并且已经看到许多操作只有一两行,我尝试使用瘦调控制器方法但是失败了,我的示例如下:< / p>

我有一个函数可以获取他们输入自定义表单的用户详细信息

protected function _setPostData()
{        
    $this->_salutation = $this->getRequest()->getPost('salutation');
    $this->_f_name = $this->getRequest()->getPost('f_name');
    $this->_l_name = $this->getRequest()->getPost('l_name');
    $this->_email = $this->getRequest()->getPost('email');
    $this->_emailAddressCheck = $this->getRequest()->getPost('emailAddressCheck');
    $this->_gender = $this->getRequest()->getPost('gender');
    $this->_country = $this->getRequest()->getPost('country');
    $this->_pref_lang = $this->getRequest()->getPost('pref_lang');        
}

我觉得这不是正确的方法,并且有更好的方法来实现相同的目标,因为你可以看到这个函数获取帖子数据并将其分配给我设置的属性上课的开始。我还有其他一些与上述非常相似的例子,如果有人可以提供一些指导,我相信我能够解决其他问题

这个例子是在索引动作中保存的,我应该把它放在帮助器中,因为它一旦正确创建我确定会有几次我能够再次使用它吗?

1 个答案:

答案 0 :(得分:0)

你应该将所有的帖子数据放在一个数组上并从那里使用

$dataArray=$this->getRequest()->getPost();  

$this->_salutation = $dataArray['salutation'];
$this->_f_name = $dataArray['f_name'];
$this->_l_name = $dataArray['l_name'];