vlaim / sonata-clone-action-bundle
Sonata Admin extension that adds a clone action.
Requires
- php: ^7.2 || ^8.0
- sonata-project/admin-bundle: ^3.84.0 || ^4.0
- symfony/framework-bundle: ^4.4 || ^5.0 || ^7.0
- symfony/http-kernel: ^4.4 || ^5.1.5 || ^7.0
- symfony/property-access: ^4.4 || ^5.0 || ^7.0
- symfony/property-info: ^4.4 || ^5.0 || ^7.0
Requires (Dev)
- doctrine/orm: ^2.8
- gedmo/doctrine-extensions: ^2.3.4 || ^3.0
- sonata-project/translation-bundle: ^2.7 || ^3.0
This package is auto-updated.
Last update: 2024-10-18 21:59:46 UTC
README
Adds a clone action to Sonata Admin. This allows you to add a clone button to your list action that leads to a create form with the values of the cloned item prefilled.
The clone action does not create the clone in the database, this happens only when the create form is submitted.
Installation
$ composer require jorrit/sonata-clone-action-bundle
Setup
The extension is registered just like any other Sonata Admin extension. For more information regarding extensions, see the Sonata Admin documentation.
Add to specific admins
Add the following code to services.yml to add the extension to one or more admin classes.
Replace admin1
and admin2
with the service names of your admin classes.
admin.clone.extension: class: Jorrit\SonataCloneActionBundle\Admin\Extension\CloneAdminExtension tags: - { name: sonata.admin.extension, target: admin1 } - { name: sonata.admin.extension, target: admin2 }
Add to all admins
Add the following code to services.yml to add the extension all admin classes.
admin.clone.extension: class: Jorrit\SonataCloneActionBundle\Admin\Extension\CloneAdminExtension tags: - { name: sonata.admin.extension, global: true }
Add the action to your admin list
Edit your admin class to add clone
to the list of actions:
protected function configureListFields(ListMapper $listMapper) { $listMapper ... ->add('_action', null, [ 'actions' => [ 'edit' => [], 'delete' => [], 'clone' => [], ] ]); }