# Media

# Beschreibung

Beinhaltet ein alternativ Model für die Medien des Package spatie/laravel-medialibrary.

# altes media-Model

# old migration

CREATE TABLE `pyou_uploads` (
    `upload_uuid` varchar(36) NOT NULL,
    `user_uuid` varchar(36) DEFAULT NULL,
    `upload_file` varchar(255) DEFAULT NULL,
    `upload_name` varchar(255) DEFAULT NULL,
    `upload_ext` varchar(5) DEFAULT NULL,
    `upload_type` varchar(255) DEFAULT NULL,
    `upload_size` int(11) DEFAULT NULL,
    `upload_folder` varchar(255) DEFAULT NULL,
    `upload_ts_create` timestamp NULL DEFAULT NULL,
    `upload_ts_delete` timestamp NULL DEFAULT NULL,
    PRIMARY KEY (`upload_uuid`)
) ENGINE = InnoDB DEFAULT CHARSET = utf8;

# neues Media-Model

Anmerkung

  • Functionality
  • Implementierung: ✅
  • Erweiterung:
  • kleinere Anpassungen

# Model (json)

{
    "class": "App\\Models\\Media",
    "database": "mysql",
    "table": "media",
    "policy": null,
    "attributes": [
    {
    "name": "id",
    "type": "bigint unsigned",
    "increments": true,
    "nullable": false,
    "default": null,
    "unique": true,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "int"
    },
    {
    "name": "model_type",
    "type": "string(255)",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "model_id",
    "type": "string(36)",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "uuid",
    "type": "string(36)",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": true,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "collection_name",
    "type": "string(255)",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "name",
    "type": "string(255)",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "file_name",
    "type": "string(255)",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "mime_type",
    "type": "string(255)",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "disk",
    "type": "string(255)",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "conversions_disk",
    "type": "string(255)",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "size",
    "type": "bigint unsigned",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "manipulations",
    "type": "json",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "array"
    },
    {
    "name": "custom_properties",
    "type": "json",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "array"
    },
    {
    "name": "generated_conversions",
    "type": "json",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "array"
    },
    {
    "name": "responsive_images",
    "type": "json",
    "increments": false,
    "nullable": false,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "array"
    },
    {
    "name": "order_column",
    "type": "integer unsigned",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": null
    },
    {
    "name": "created_at",
    "type": "datetime",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "datetime"
    },
    {
    "name": "updated_at",
    "type": "datetime",
    "increments": false,
    "nullable": true,
    "default": null,
    "unique": false,
    "fillable": true,
    "hidden": false,
    "appended": null,
    "cast": "datetime"
    }
    ],
    "relations": [
    { "name": "sharedmedia", "type": "HasMany", "related": "App\\Models\\Sharedmedia" },
    { "name": "activities", "type": "MorphMany", "related": "Spatie\\Activitylog\\Models\\Activity" }
    ],
    "observers": [
    {
    "event": "creating",
    "observer": ["Closure", "Spatie\\MediaLibrary\\MediaCollections\\Models\\Observers\\MediaObserver@creating"]
    },
    { "event": "created", "observer": ["Closure"] },
    {
    "event": "updating",
    "observer": ["Closure", "Spatie\\MediaLibrary\\MediaCollections\\Models\\Observers\\MediaObserver@updating"]
    },
    {
    "event": "updated",
    "observer": ["Closure", "Spatie\\MediaLibrary\\MediaCollections\\Models\\Observers\\MediaObserver@updated"]
    },
    {
    "event": "deleted",
    "observer": ["Closure", "Spatie\\MediaLibrary\\MediaCollections\\Models\\Observers\\MediaObserver@deleted"]
    },
    { "event": "deleting", "observer": ["App\\Observers\\MediaObserver@deleting"] }
    ]
}

# Beziehungen

# übergeordnetes Thema

2.6 Datenstruktur

Last Updated: 9/20/2023, 9:56:11 PM