kraenzle-ritter / resources
Resources trait
v0.0.8
2025-08-21 18:13 UTC
Requires
- guzzlehttp/guzzle: >=7
- laravel/framework: >=11
- survos/wikidata: dev-master
Requires (Dev)
- mockery/mockery: ^1.6
- orchestra/testbench: ^9
- phpunit/phpunit: >=11.5
README
Resource Model and a hasResource trait where resources are basically links to a resources (eg. Wikipedia-Article or GND-Entry).
Installation
Via Composer
$ composer require kraenzle-ritter/resources
Then either run php artisan vendor:publish
and publish the migration or copy the file to your migrations directory. Then run php artisan migrate
.
Usage
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model use KraenzleRitter\Resources\hasResources; class MyModel extends Model { use hasResources; ... }
Then you are ready to go:
$resource = [ 'provider' => 'Wikipedia', 'provider_id' => 4013996, 'url' => 'https://fr.wikipedia.org/wiki/Érik_Desmazières' // optional 'full_json' => [...] ]; $model = MyModel::find(1); $this->model->updateOrCreateResource($resource); $model->resources; ...
With the artisan-command
php artisan resources:fetch --provider=gnd // or wikidata or wikipedia
You can add more resources to a model which already has a gnd link. You can configure the list of resources in the config file.
License
License. Please see the license file for more information.