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: 5 days 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 (about 13 years ago)
- Default Branch: master
- Last Pushed: 2023-01-25T08:03:52.000Z (almost 2 years ago)
- Last Synced: 2024-05-02T01:14:32.826Z (8 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
Awesome Lists containing this project
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 `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 protected]");//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