2017 © Pedro Peláez
 

library ratable

let object can be rated

image

unisharp/ratable

let object can be rated

  • Wednesday, May 23, 2018
  • by FreedomKnight
  • Repository
  • 9 Watchers
  • 2 Stars
  • 334 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 93 % Grown

The README.md

Ratable

Provide a trait to multiple models to rate easliy., (*1)

Installation

composer require unisharp/ratable dev-master

Configuration

Set provider modules in config/app.php, (*2)

return [
    'providers' => [
          UniSharp\Ratable\Providers\RatableServiceProvider:class
    ]
];

Usages

Use trait in the model, (*3)


namespace App; use Illuminate\Database\Eloquent\Model; use UniSharp\Ratable\Traits\Ratable; class Movie extends Model { use Ratable; }

Rate your model with grade and/or description, (*4)


$movie = new Movie(); $movie->rates()->create([ 'grade' => 10, 'description' => 'Excellent' ]);

Get your model's average rate, (*5)


$movie = new Movie(); $movie->rates()->saveMany( new UniSharp\Ratable\Models\Rate(['grade' => 10, 'description' => 'Excellent'], new UniSharp\Ratable\Models\Rate(['grade' => 5, 'description' => 'Not Bad'] ); $movie->average() // 7.5

Get a rate's giver and model, (*6)

$movie = new Movie();

$rate = $movie->rates()->create([
  'grade' => 10,
  'description' => 'Excellent'
]);

// giver
$rate->user;

// model
$rate->ratable;

The Versions