console.rst 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. Console/Command-Line Commands
  2. =============================
  3. SonataAdminBundle provides the following console commands:
  4. * ``cache:create-cache-class``
  5. * ``sonata:admin:generate``
  6. * ``sonata:admin:list``
  7. * ``sonata:admin:explain``
  8. * ``sonata:admin:setup-acl``
  9. * ``sonata:admin:generate-object-acl``
  10. cache:create-cache-class
  11. ------------------------
  12. The ``cache:create-cache-class`` command generates the cache class
  13. (``app/cache/...env.../classes.php``) from the classes.map file.
  14. Usage example:
  15. .. code-block:: bash
  16. php app/console cache:create-cache-class
  17. sonata:admin:generate
  18. ---------------------
  19. The ``sonata:admin:generate`` command generates a new Admin class based on the given model
  20. class, registers it as a service and potentially creates a new controller.
  21. As an argument you need to specify the fully qualified model class.
  22. All passed arguments and options are used as default values in interactive mode.
  23. You can disable the interactive mode with ``--no-interaction`` option.
  24. The command require the SensioGeneratorBundle to work. If you don't already have it, you can install it with :
  25. .. code-block:: bash
  26. composer require --dev sensio/generator-bundle
  27. Options are:
  28. * ``bundle``: the bundle name (the default value is determined by the given model class, e.g. "YourNSFooBundle")
  29. * ``admin``: the admin class basename (by default this adds "Admin" to the model class name, e.g. "BarAdmin")
  30. * ``controller``: the controller class basename (by default this adds "AdminController" to the model class name, e.g. "BarAdminController")
  31. * ``manager``: the model manager type (by default this is the first registered model manager type, e.g. "orm")
  32. * ``services``: the services YAML file (the default value is "services.yml" or "admin.yml" if it already exist)
  33. * ``id``: the admin service ID (the default value is combination of the bundle name and admin class basename like "your_ns_foo.admin.bar")
  34. Usage example:
  35. .. code-block:: bash
  36. php app/console sonata:admin:generate YourNS/FooBundle/Entity/Bar
  37. sonata:admin:list
  38. -----------------
  39. To see which admin services are available use the ``sonata:admin:list`` command.
  40. It prints all the admin service ids available in your application. This command
  41. gets the ids from the ``sonata.admin.pool`` service where all the available admin
  42. services are registered.
  43. Usage example:
  44. .. code-block:: bash
  45. php app/console sonata:admin:list
  46. .. figure:: ../images/console_admin_list.png
  47. :align: center
  48. :alt: List command
  49. :width: 700px
  50. List command
  51. sonata:admin:explain
  52. --------------------
  53. The ``sonata:admin:explain`` command prints details about the admin of a model.
  54. As an argument you need to specify the admin service id of the Admin to explain.
  55. Usage example:
  56. .. code-block:: bash
  57. php app/console sonata:admin:explain sonata.news.admin.post
  58. .. figure:: ../images/console_admin_explain.png
  59. :align: center
  60. :alt: Explain command
  61. :width: 700px
  62. Explain command
  63. sonata:admin:setup-acl
  64. ----------------------
  65. The ``sonata:admin:setup-acl`` command updates ACL definitions for all Admin
  66. classes available in ``sonata.admin.pool``. For instance, every time you create a
  67. new ``Admin`` class, you can create its ACL by using the ``sonata:admin:setup-acl``
  68. command. The ACL database will be automatically updated with the latest masks
  69. and roles.
  70. Usage example:
  71. .. code-block:: bash
  72. php app/console sonata:admin:setup-acl
  73. sonata:admin:generate-object-acl
  74. --------------------------------
  75. The ``sonata:admin:generate-object-acl`` is an interactive command which helps
  76. you to generate ACL entities for the objects handled by your Admins. See the help
  77. of the command for more information.