Skip to content
This repository has been archived by the owner on Dec 7, 2019. It is now read-only.

CreateController fails in mkdir if not only one folder to create #67

Closed
Verhaeg opened this issue Aug 29, 2013 · 1 comment
Closed

CreateController fails in mkdir if not only one folder to create #67

Verhaeg opened this issue Aug 29, 2013 · 1 comment

Comments

@Verhaeg
Copy link

Verhaeg commented Aug 29, 2013

Just trying zftool in my first zf2 project and noticed this..
I created a module X and everything was fine.. didn't notice that it also created the XController so I tried to create it again

zftool.phar create controller X X

and it gave me an error:

PHP Warning:  mkdir(): No such file or directory in /home/user/workspace/test/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 141
PHP Stack trace:
PHP   1. {main}() /home/user/workspace/test/vendor/zendframework/zftool/zf.php:0
PHP   2. Zend\Mvc\Application->run() /home/user/workspace/test/vendor/zendframework/zftool/zf.php:50
PHP   3. Zend\EventManager\EventManager->trigger() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php:309
PHP   4. Zend\EventManager\EventManager->triggerListeners() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:207
PHP   5. call_user_func() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP   6. Zend\Mvc\DispatchListener->onDispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP   7. Zend\Mvc\Controller\AbstractController->dispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/DispatchListener.php:114
PHP   8. Zend\EventManager\EventManager->trigger() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractController.php:117
PHP   9. Zend\EventManager\EventManager->triggerListeners() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:207
PHP  10. call_user_func() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP  11. Zend\Mvc\Controller\AbstractActionController->onDispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP  12. ZFTool\Controller\CreateController->controllerAction() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractActionController.php:83
PHP  13. mkdir() /home/user/workspace/test/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php:141
PHP Warning:  file_put_contents(./module/Revis/view/test/test/index.phtml): failed to open stream: No such file or directory in /home/user/workspace/test/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php on line 146
PHP Stack trace:
PHP   1. {main}() /home/user/workspace/test/vendor/zendframework/zftool/zf.php:0
PHP   2. Zend\Mvc\Application->run() /home/user/workspace/test/vendor/zendframework/zftool/zf.php:50
PHP   3. Zend\EventManager\EventManager->trigger() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php:309
PHP   4. Zend\EventManager\EventManager->triggerListeners() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:207
PHP   5. call_user_func() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP   6. Zend\Mvc\DispatchListener->onDispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP   7. Zend\Mvc\Controller\AbstractController->dispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/DispatchListener.php:114
PHP   8. Zend\EventManager\EventManager->trigger() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractController.php:117
PHP   9. Zend\EventManager\EventManager->triggerListeners() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:207
PHP  10. call_user_func() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP  11. Zend\Mvc\Controller\AbstractActionController->onDispatch() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php:468
PHP  12. ZFTool\Controller\CreateController->controllerAction() /home/user/workspace/test/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractActionController.php:83
PHP  13. file_put_contents() /home/user/workspace/test/vendor/zendframework/zftool/src/ZFTool/Controller/CreateController.php:146
There was an error during controller creation.

This ssemed to be because mkdir "recursive" param is default to false.. and the module current view folder is empty.. maybe setting the recursive param to true would solve this issue.

@Verhaeg
Copy link
Author

Verhaeg commented Aug 29, 2013

Just adding suggestion here, in the CreateController it would be possible to change (also note that one folder was missing)

mkdir("$path/module/$name");
mkdir("$path/module/$name/config");
mkdir("$path/module/$name/src");
mkdir("$path/module/$name/src/$name");
mkdir("$path/module/$name/src/$name/Controller");
mkdir("$path/module/$name/view");

to

mkdir("$path/module/$name/config", 0777, true);
mkdir("$path/module/$name/src/$name/Controller", 0777, true);
mkdir("$path/module/$name/view/$name", 0777, true); //this was missing

weierophinney added a commit that referenced this issue Sep 4, 2013
- Also has side effect of allowing fewer calls to mkdir.
weierophinney added a commit that referenced this issue Sep 4, 2013
weierophinney added a commit to zendframework/ZF2Package that referenced this issue Sep 4, 2013
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant