New

Just launched: Vueblocks, a brand-new search engine for Vue packages! Explore Vueblocks →

sunel/eav

Eav For Artisan.
3,687 153
Install
composer require sunel/eav
Latest Version:0.3.1
Laravel:6 · 7 · 8
Older releases:5
License:MIT
Last Updated:Nov 25, 2022
Links: GitHub  ·  Packagist
Maintainer: sunel

WIP

EAV

Entity–attribute–value model (EAV) is a data model to encode, in a space-efficient manner, entities where the number of attributes (properties, parameters) that can be used to describe them is potentially vast, but the number that will actually apply to a given entity is relatively modest.

wikipedia

Documentation

EAV Documentation

When to Use

  • Let us consider a situation where a number of different attributes can be used to describe an entity, but only few attributes actually apply to each one. One option is to create a table with a column representing each attribute; this is suitable for entity with a fixed number of attributes, where all or most attributes have values for a most objects. However, in our case we would end up with records where majority of columns would be empty, because attributes may be unknown or inapplicable. To solve the above problem you can apply the EAV (Entity, Attribute, Value) model.

  • Have a loose schema that is likely to change over time. Table holding attributes describing an entity is not limited to a specific number of columns, meaning that it doesn't require a schema redesign every time new attribute needs to be introduced. The number of attributes can grow vertically as the database evolves, without the need for structure changes.

Limitation of EAV

  • In EAV model the entity data is more fragmented and so selecting an entire entity record requires multiple table joins. Please Check this

Related Packages

cloud-dev-studio/eav-library-laravel

EAV Library Implementation for Laravel

27 4
jurager/eav

Flexible Entity-Attribute-Value (EAV) system for Laravel with typed storage, loc...

1,608 1
vanilo/properties

Vanilo Properties (Attributes) Module

263,540 11
devio/eavquent

EAV modeling package for Eloquent and Laravel.

10,369 64
jurager/filterable

Laravel package for building complex eloquent filters in a simple, structured wa...

1,271 0

Version History

Version Released PHP Laravel License
0.3.1 ^6.0|^7.0|^8.0 MIT
0.3.0 ^6.0|^7.0|^8.0 MIT
0.2.3 >=7.0.0 ^5.5|^6.0|^7.0 MIT
0.2.2 >=7.0.0 ^5.5|^6.0|^7.0 MIT
0.2.1 >=7.0.0 ^5.5|^6.0|^7.0 MIT
Pre-releases (11)
Version Released PHP Laravel License
v0.1.0-beta.11 >=7.0.0 ^5.5|^6.0 MIT
v0.1.0-beta.10 >=7.0.0 ^5.5|^6.0 MIT
v0.1.0-beta.9 >=7.0.0 ^5.5|^6.0 MIT
v0.1.0-beta.8 >=7.0.0 ^5.5 MIT
v0.1.0-beta.7 >=7.0.0 ^5.5 MIT