Skip to content

Acceptable model

Pe Ell edited this page Apr 17, 2017 · 5 revisions

Setup an acceptable model

With boolean flag

<?php

namespace App\Models;

use Cog\Flag\Traits\Classic\HasAcceptedFlag;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasAcceptedFlag;
}

Model must have boolean is_accepted column in database table.

With timestamp flag

<?php

namespace App\Models;

use Cog\Flag\Traits\Classic\HasAcceptedAt;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasAcceptedAt;
}

Model must have nullable timestamp accepted_at column in database table.

Available functions

Get only accepted models

Post::all();
Post::withoutRejected();

Get only rejected models

Post::onlyRejected();

Get accepted + rejected models

Post::withRejected();

Accept model

Post::where('id', 4)->accept();

Reject model

Post::where('id', 4)->reject();
Clone this wiki locally