mirror of
https://github.com/archtechx/virtualcolumn.git
synced 2025-12-12 05:14:05 +00:00
Eloquent Virtual Column package.
* Add L10 support * Update PHP version in ci.yml * Update ci.yml * Revert ci.yml changes * Migrate PHPUnit XML config using "--migrate-configuration" * Update phpunit.xml (delete cacheDirectory, use backupStaticAttributes instead of backupStaticProperties) * Delete backupStaticAttributes * Add PHP version matrix * Use ci.yml from #12 * Correct Laravel matrix versions * Revert ci.yml changes * Use multiple PHP versions * Update ci.yml * Don't use PHP 8 with Laravel 10 in CI * Update ci.yml * Remove L6 and L8 support * Use single PHP version in CI * Update ci.yml * Change matrix in ci.yml * swap laravel 9 & 10 * Update README.md --------- Co-authored-by: Samuel Štancl <samuel@archte.ch> |
||
|---|---|---|
| .github/workflows | ||
| src | ||
| tests | ||
| .gitattributes | ||
| .gitignore | ||
| .php-cs-fixer.php | ||
| check | ||
| composer.json | ||
| LICENSE | ||
| phpunit.xml | ||
| README.md | ||
Eloquent Virtual Column
Installation
Supports Laravel 9 and 10.
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']);