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: 8 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 (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2023-01-25T08:03:52.000Z (almost 3 years ago)
- Last Synced: 2024-05-02T01:14:32.826Z (over 1 year 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
Awesome Lists containing this project
- 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: [](https://travis-ci.org/rdohms/dms-filter-bundle) [](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 `config/bundles.php`
DMS\Bundle\FilterBundle\DMSFilterBundle::class => ['all' => true]
### 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 attributes to your entity, import the namespace and add them like this:
```php
setName("My name");
$user->setEmail(" email@mail.com");
//Get a Filter
$newUser = $filter->filterEntity($car);
return new Response(
$newUser->getModel()
);
}
```
### 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