Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rdohms/dms-filter-bundle
Provides a FilterService for Symfony to allow users to implement input filtering in entities using Annotations
https://github.com/rdohms/dms-filter-bundle
filtering hacktoberfest symfony symfony-bundle
Last synced: 2 months ago
JSON representation
Provides a FilterService for Symfony to allow users to implement input filtering in entities using Annotations
- Host: GitHub
- URL: https://github.com/rdohms/dms-filter-bundle
- Owner: rdohms
- License: mit
- Created: 2012-01-09T21:51:24.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2023-01-25T08:03:52.000Z (over 1 year ago)
- Last Synced: 2024-03-23T07:01:33.468Z (3 months ago)
- Topics: filtering, hacktoberfest, symfony, symfony-bundle
- Language: PHP
- Homepage:
- Size: 315 KB
- Stars: 77
- Watchers: 5
- Forks: 23
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-symfony - dms-filter-bundle - Provides a FilterService to allow users to implement input filtering in entities using Annotations. (Validation)
- awesome-symfony - dms-filter-bundle - Provides a FilterService to allow users to implement input filtering in entities using Annotations. (Validation)
README
# DMS Filter Bundle
This bundle makes DMS/Filter available for use in your application for input filtering.
Current Status: [![Build Status](https://travis-ci.org/rdohms/dms-filter-bundle.png?branch=2.dev)](https://travis-ci.org/rdohms/dms-filter-bundle) [![Dependency Status](https://www.versioneye.com/php/dms:dms-filter-bundle/1.1.1/badge.png)](https://www.versioneye.com/php/dms:dms-filter-bundle/1.1.1)
## Install
### 1. Import libraries
Option A) Use Composer.
composer require dms/dms-filter-bundle
### 2. Enable Bundle
Add this to your `AppKernel.php`
new DMS\Bundle\FilterBundle\DMSFilterBundle(),
### 3. Configure
This bundle can now automatically filter your forms if it finds a annotated entity attached.
This is the default behaviour, if you want to disable it add this to your `config.yml`
dms_filter:
auto_filter_forms: false## Usage
### Adding Annotations
To add annotations to your entity, import the namespace and add them like this:
```php
name = "My name";
$entity->email = " [email protected]";$oldEntity = clone $entity;
$filterService = $this->get('dms.filter');
$filterService->filterEntity($entity);return array('entity' => $entity, "old" => $oldEntity);
}
```### Auto filtering
This bundle can now automatically filter your forms if it finds a annotated entity attached. If enabled entities will be filtered before they are validated.
### Cascade Filtering
This Bundle automatically cascades filtering into all embedded forms that return valid entities. If you wish child
entities to be ignored, set the `cascade_filter` option on the form to false.```php
class TaskType extends AbstractType
{
// ...public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'cascade_filter' => false,
));
}// ...
}
```## Service based method
If you need to filter content using a method in a service, you do not need to create your own Annotations, you can
simply use the Service Filter, designed specifically for Symfony Services.See below the usage example of the annotation, it takes 2 options: `service` and `method`.
```php