Download the PHP package leettech/laravel-flagger without Composer
On this page you can find all versions of the php package leettech/laravel-flagger. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-flagger
Laravel Flagger
Flagger is a package that has been designed to help you on enabling feature flags in Laravel projects.
- Version Compatibility
- Installation
- Configuration
- Usage
- flag
- flagMany
- hasFeatureEnabled
- FlaggerMiddleware
- Getting enabled features for a model
- Flagger command
Version Compatibility
Laravel | Flagger |
---|---|
5.3.x | 1.x.x |
5.4.x | 2.x.x |
Installation
To install through composer, simply add the following in your composer.json
file:
And then run composer install
.
Quick Installation
The above installation can also be simplified by using the following command:
Configuration
After installing the Flagger package, register the FlaggerServiceProvider in your config/app.php configuration file:
Also, add the Flagger facade to the aliases array in your app configuration file:
Then run the migration script to create features
and flaggables
tables:
Publish the package configuration:
And, in your config/flagger.php
configuration file, specify which model will have feature flags associated to it (by default it's set to App\User::class
).
Usage
First of all, make sure you have inserted your features in the features
table in the database. You can use the model Leet\Models\Feature
for this:
flag
Use \Flagger::flag($flaggable, $feature)
to attach a feature to a model:
You can also add Leet\Models\FlaggerTrait
to the model in order to make flagger methods available from it:
flagMany
Use \Flagger::flagMany($flaggables, $feature)
to attach a feature to a collection of models:
hasFeatureEnabled
Anywhere in the application, you can check if a user has access to a feature:
FlaggerMiddleware
To use the FlaggerMiddleware, you have to declare it in the application kernel:
And on any authenticated route:
or
Getting enabled features for a model
By adding to your model, you are able to access its enabled features:
Flagger command
The flagger command accepts an integer, array, or a path to a csv containing a list of integers and adds a flag to each of them:
Be sure to create the flag before attempting to add it to any entity.