stancl/virtualcolumn

Eloquent virtual column.

Maintainers

๐Ÿ‘ stancl

Package info

github.com/archtechx/virtualcolumn

pkg:composer/stancl/virtualcolumn

Statistics

Installs: 8โ€‰300โ€‰436

Dependents: 15

Suggesters: 0

Stars: 85

Open Issues: 1

v1.5.0 2025-02-25 13:12 UTC

Requires

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 75718edcfeeb19abc1970f5395043f7d43cce5bc

  • Samuel ล tancl <samuel.stancl.woop@gmail.com>

README

Installation

Supports Laravel 10, 11, 12, and 13.

composer require stancl/virtualcolumn

Usage

Use the VirtualColumn trait on your model:

use Illuminate\Database\Eloquent\Model;
use Stancl\VirtualColumn\VirtualColumn;

class MyModel extends Model
{
 use VirtualColumn;

 public $guarded = [];

 public static function getCustomColumns(): array
 {
 return [
 'id',
 'custom1',
 'custom2',
 ];
 }
}

Create a migration:

public function up()
{
 Schema::create('my_models', function (Blueprint $table) {
 $table->increments('id');

 $table->string('custom1')->nullable();
 $table->string('custom2')->nullable();

 $table->json('data');
 });
}

And store any data on your model:

$myModel = MyModel::create(['foo' => 'bar']);
$myModel->update(['foo' => 'baz']);