LaravelPackages.net
Acme Inc.
Toggle sidebar
coliving/commentable

Commentable Polymorphic Eloquent Models for for Laravel. This is fork from artisanry/commentable as it's abandoned

35.126
2
v5.8.0
About coliving/commentable

coliving/commentable is a Laravel package for commentable polymorphic eloquent models for for laravel. this is fork from artisanry/commentable as it's abandoned. It currently has 2 GitHub stars and 35.126 downloads on Packagist (latest version v5.8.0). Install it with composer require coliving/commentable. Discover more Laravel packages by coliving or browse all Laravel packages to compare alternatives.

Last updated

Laravel Commentable

Build Status PHP from Packagist Latest Version License

Installation

Require this package, with Composer, in the root directory of your project.

$ composer require coliving/commentable

To get started, you'll need to publish the vendor assets and migrate:

php artisan vendor:publish --provider="Artisanry\Commentable\CommentableServiceProvider" && php artisan migrate

Usage

Setup a Model

<?php

namespace App;


use Artisanry\Commentable\Traits\HasComments;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasComments;
}

Create a comment

$user = User::first();
$post = Post::first();

$comment = $post->comment([
    'title' => 'Some title',
    'body' => 'Some body',
], $user);

dd($comment);

Create a comment as a child of another comment (e.g. an answer)

$user = User::first();
$post = Post::first();

$parent = $post->comments->first();

$comment = $post->comment([
    'title' => 'Some title',
    'body' => 'Some body',
], $user, $parent);

dd($comment);

Update a comment

$comment = $post->updateComment(1, [
    'title' => 'new title',
    'body' => 'new body',
]);

Delete a comment

$post->deleteComment(1);

Count comments an entity has

$post = Post::first();

dd($post->commentCount());

Testing

$ phpunit

Security

If you discover a security vulnerability within this package, please send an e-mail to [email protected]. All security vulnerabilities will be promptly addressed.

Credits

This project exists thanks to all the people who contribute.

License

Mozilla Public License Version 2.0 (MPL-2.0).

Star History Chart