sarahman / laravel-timestamp-boolean-fields
Deal with the fields whose timestamp value means their boolean status.
Requires
- php: >=5.4
- illuminate/database: ^4.0
- illuminate/events: ^4.0
Requires (Dev)
- phpunit/phpunit: ^4.8
This package is auto-updated.
Last update: 2024-10-24 14:11:20 UTC
README
Introduction
This library can be used in the scenarios when you want to understand the db boolean field value as not only its status but also the time when it becomes true.
Code Sample
<?php namespace App; use Sarahman\Database\Support\BooleanTimestampFieldManipulator; use Illuminate\Database\Eloquent\Model; class Product extends Model { use BooleanTimestampFieldManipulator; protected $fillable = ['title', 'description', 'is_active']; protected static $boolTimestampFields = ['is_active']; public static function boot() { parent::boot(); /** This trait method call is required for laravel v4.*. */ self::bootBooleanTimestampFieldManipulator(); } }
Installation
This trait is installed via Composer. To install, simply add to your composer.json
file:
composer require sarahman/laravel-timestamp-boolean-fields:1.1.*
After installing, you would just use it in your eloquent/model class and define the timestamp-based boolean fields in the $boolTimestampFields
property as well as in $fillable
property.
If the project is developed in Laravel v4.*, then you need to call bootBooleanTimestampFieldManipulator()
method in the boot()
of the class.
<?php ... public static function boot() { parent::boot(); self::bootBooleanTimestampFieldManipulator(); } ...
Note: The timestamp-based field names must be prefixed by is_
; and the field names without its is_
prefix will be appended in the model attributes with time_being_
prefix; i.e. is_active
field name will appended in the model attributes as time_being_active
name. The is_active
field value will be boolean and time_being_active
field value will the timestamp value.
Support
If you are having general issues with this package, feel free to contact me through Gmail.
If you believe you have found an issue, please report it using the GitHub issue tracker, or better yet, fork the repository and submit a pull request.
Contribution
If you're using this package, I'd love to hear your thoughts. Thanks! Please feel free to contribute in this library and send us pull requests.
License
The MIT License (MIT). Please see License File for more information.