Package Data | |
---|---|
Maintainer Username: | developer |
Maintainer Contact: | developer@ican.ie (ICAN) |
Package Create Date: | 2016-12-16 |
Package Last Update: | 2016-12-16 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-11 15:13:48 |
Package Statistics | |
---|---|
Total Downloads: | 58 |
Monthly Downloads: | 2 |
Daily Downloads: | 1 |
Total Stars: | 2 |
Total Watchers: | 7 |
Total Forks: | 1 |
Total Open Issues: | 1 |
Allows for threaded comments to be added to multiple and different models within your app for Laravel 5.
Based on now defunct Lanz/Laravel Commentable.
This package use Nested Sets pattern with Baum.
More information about Nested Sets
Edit your project's composer.json file to require ican-agency/laravel-commentable
.
"require": {
"ican-agency/laravel-commentable": "~1.0"
}
Next, update Composer from the terminal.
composer update
As with most Laravel packages you'll need to register Commentable service provider. In your config/app.php
add 'Ican\Commentable\CommentableServiceProvider'
to the end of the $providers
array.
'providers' => [
'Illuminate\Foundation\Providers\ArtisanServiceProvider',
'Illuminate\Auth\AuthServiceProvider',
...
'Ican\Commentable\CommentableServiceProvider',
],
After the package is correctly installed, you need to generate migration.
php artisan commentable:migration
It will generate the <timestamp>_create_comments_table.php
migration. You may now run it with the artisan migrate command:
php artisan migrate
After the migration, one new table will be present, comments
.
You need to set on your model that it acts as commentable.
<?php namespace App;
use Ican\Commentable\Commentable;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
use Commentable;
}
Now, your model has access to comments
method.
$post = Post::first();
$comment = new Ican\Commentable\Comment;
$comment->body = 'My first comment!';
$comment->user_id = \Auth::id();
$post->comments()->save($comment);
dd(Post::first()->comments);
For all information about threaded comment, look at the documentation on Baum.