项目作者: rostym

项目描述 :
Magento 2 Code Generator
高级语言: PHP
项目地址: git://github.com/rostym/magento2-code-generator.git
创建时间: 2016-04-25T17:26:41Z
项目社区:https://github.com/rostym/magento2-code-generator

开源协议:MIT License

下载


Magento2 Code Generator

This module provide possibility to generate code via command line tool.

Requirements

  • Magento 2 (CE, EE) 2.1.0 and later
  • PHP >=7.0

Installation

Install the latest version with

  1. $ composer require krifollk/module-code-generator

Usage

Currently, module supports the next commands:

Generating module skeleton.

  • 1-st param is module name.
  • 2-nd module version (not required, by default 0.1.0).
    ```bash
    $ php bin/magento generate:module Config_Editor 0.2.0

Output:
File /var/www/magento2/app/code/Config/Editor/registration.php was generated.
File /var/www/magento2/app/code/Config/Editor/etc/module.xml was generated.
File /var/www/magento2/app/code/Config/Editor/composer.json was generated.
File /var/www/magento2/app/code/Config/Editor/Setup/InstallData.php was generated.
File /var/www/magento2/app/code/Config/Editor/Setup/InstallSchema.php was generated.
File /var/www/magento2/app/code/Config/Editor/Setup/Uninstall.php was generated.
File /var/www/magento2/app/code/Config/Editor/Setup/UpgradeData.php was generated.
File /var/www/magento2/app/code/Config/Editor/Setup/UpgradeSchema.php was generated.

  1. Generating 'Model Triad' by DB table.
  2. - 1-st param is module name.
  3. - 2-nd entity name.
  4. - 3-th table name.
  5. ```bash
  6. $ php bin/magento generate:model:triad Config_Editor Config core_config_data
  7. Output:
  8. File /var/www/magento2/app/code/Config/Editor/Api/Data/ConfigInterface.php was generated.
  9. File /var/www/magento2/app/code/Config/Editor/Model/ResourceModel/Config.php was generated.
  10. File /var/www/magento2/app/code/Config/Editor/Model/Config.php was generated.
  11. File /var/www/magento2/app/code/Config/Editor/Model/ResourceModel/Config/Collection.php was generated.
  12. File /var/www/magento2/app/code/Config/Editor/Api/Data/ConfigSearchResultsInterface.php was generated.
  13. File /var/www/magento2/app/code/Config/Editor/Api/ConfigRepositoryInterface.php was generated.
  14. File /var/www/magento2/app/code/Config/Editor/Model/ConfigRepository.php was generated.
  15. File /var/www/magento2/app/code/Config/Editor/etc/di.xml was generated.

Generating ‘Crud’ by DB table.

  • 1-st param is module name.
  • 2-nd entity name.
  • 3-th table name.
  1. $ php bin/magento generate:crud Config_Editor Config core_config_data
  2. Output:
  3. File /var/www/magento2/app/code/Config/Editor/Api/Data/ConfigInterface.php was generated.
  4. File /var/www/magento2/app/code/Config/Editor/Model/ResourceModel/Config.php was generated.
  5. File /var/www/magento2/app/code/Config/Editor/Model/Config.php was generated.
  6. File /var/www/magento2/app/code/Config/Editor/Model/ResourceModel/Config/Collection.php was generated.
  7. File /var/www/magento2/app/code/Config/Editor/Api/Data/ConfigSearchResultsInterface.php was generated.
  8. File /var/www/magento2/app/code/Config/Editor/Api/ConfigRepositoryInterface.php was generated.
  9. File /var/www/magento2/app/code/Config/Editor/Model/ConfigRepository.php was generated.
  10. File /var/www/magento2/app/code/Config/Editor/etc/di.xml was generated.
  11. File /var/www/magento2/app/code/Config/Editor/Model/UiComponent/Listing/Column/ConfigActions.php was generated.
  12. File /var/www/magento2/app/code/Config/Editor/Model/Config/DataProvider.php was generated.
  13. File /var/www/magento2/app/code/Config/Editor/Model/ResourceModel/Config/Grid/Collection.php was generated.
  14. File /var/www/magento2/app/code/Config/Editor/view/adminhtml/ui_component/config_editor_config_form.xml was generated.
  15. File /var/www/magento2/app/code/Config/Editor/view/adminhtml/ui_component/config_editor_config_listing.xml was generated.
  16. File /var/www/magento2/app/code/Config/Editor/view/adminhtml/layout/config_editor_config_edit.xml was generated.
  17. File /var/www/magento2/app/code/Config/Editor/view/adminhtml/layout/config_editor_config_index.xml was generated.
  18. File /var/www/magento2/app/code/Config/Editor/view/adminhtml/layout/config_editor_config_new.xml was generated.
  19. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/Index.php was generated.
  20. File /var/www/magento2/app/code/Config/Editor/etc/adminhtml/routes.xml was generated.
  21. File /var/www/magento2/app/code/Config/Editor/etc/di.xml was generated.
  22. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/Edit.php was generated.
  23. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/NewAction.php was generated.
  24. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/Save.php was generated.
  25. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/Delete.php was generated.
  26. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/MassDelete.php was generated.
  27. File /var/www/magento2/app/code/Config/Editor/Controller/Adminhtml/Config/InlineEdit.php was generated.

Generating ‘Plugins’ (Interactive mode)

  • 1-st param is module name.
  1. $ php bin/magento generate:plugin Config_Editor
  2. Output:
  3. Enter the name of the class for which you want to create plugin: \Magento\Cms\Controller\Index\Index
  4. Enter the name of the plugin class (\Module\Name\ part not required) Default: \Config\Editor\Plugin\Magento\Cms\Controller\Index\Index:
  5. +-----+-----------------+
  6. | #id | Allowed methods |
  7. +-----+-----------------+
  8. | 0 | execute |
  9. | 1 | dispatch |
  10. | 2 | getActionFlag |
  11. | 3 | getRequest |
  12. | 4 | getResponse |
  13. +-----+-----------------+
  14. Enter method ids and types of interception(a - after, b - before, ar - around)
  15. for which you want to create plugin using next format: id:b-ar-a, id:a-b: 0:a-b-ar
  16. +-------------+--------------------+
  17. | Method Name | Interception types |
  18. +-------------+--------------------+
  19. | execute | Before |
  20. | | Around |
  21. | | After |
  22. | | |
  23. +-------------+--------------------+
  24. Is everything alright ? (y\n - yes by default)
  25. File /var/www/magento2/app/code/Config/Editor/Plugin/Magento/Cms/Controller/Index/Index.php has been generated.
  26. File /var/www/magento2/app/code/Config/Editor/etc/di.xml has been generated.

In additional, all commands supports —dir option where you can specify your custom module directory.

Ex: —dir=modules/module-some-dir

Submitting bugs and feature requests

Bugs and feature request are tracked on GitHub

Author

Rostyslav Tymoshenko

License

This project is licensed under the MIT License - see the LICENSE file for details