Details
Description
zend tool doesnt allow you create controller (eg. index) used in another module (eg. default) in another module.
Example:
zf create project test
cd test
zf create module asdf
zf create controller index 1 asdf
Result:
This project already has a controller named index
The error is in Zend_Tool_Project_Provider_Controller::create() method, which doesnt pass $module variable to self::hasResource() method.
Error code:
if (self::hasResource($this->_loadedProfile, $name)) { throw new Zend_Tool_Project_Provider_Exception('This project already has a controller named ' . $name); }
Patched code:
if (self::hasResource($this->_loadedProfile, $name, $module)) { throw new Zend_Tool_Project_Provider_Exception('This project already has a controller named ' . $name); }
Same errors are in next code block:
Error Code:
if ($indexActionIncluded) { $indexActionResource = Zend_Tool_Project_Provider_Action::createResource($this->_loadedProfile, 'index', $name); $indexActionViewResource = Zend_Tool_Project_Provider_View::createResource($this->_loadedProfile, 'index', $name); } if ($testingEnabled) { $testControllerResource = Zend_Tool_Project_Provider_Test::createApplicationResource($this->_loadedProfile, $name, 'index'); }
Patched Code:
if ($indexActionIncluded) { $indexActionResource = Zend_Tool_Project_Provider_Action::createResource($this->_loadedProfile, 'index', $name, $module); $indexActionViewResource = Zend_Tool_Project_Provider_View::createResource($this->_loadedProfile, 'index', $name, $module); } if ($testingEnabled) { $testControllerResource = Zend_Tool_Project_Provider_Test::createApplicationResource($this->_loadedProfile, $name, 'index', $module); }
Attachments
Issue Links
| This issue duplicates: | ||||
| ZF-6755 | Zend_Tool_Project_Provider_Controller refuses to create a controller in a module if a controller with the same name exists in default module |
|
|
|
This is the same issue, the failure to pass the parameter causes the conflict with existing controller in the default module.