NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Pridajte balík. Service provider sa zaregistruje automaticky — bez manuálnej registrácie:

composer require roundly-consulting/attributes-for-laravel

Publikujte migrácie a spustite ich:

php artisan vendor:publish --tag="attributes-migrations"
php artisan migrate

Migrácie len na publikovanie

Balík svoje migrácie nikdy nenačítava sám. Publikovanie skopíruje tri súbory s časovou pečiatkou do database/migrations vašej aplikácie, kde ich vlastníte a pred spustením môžete schému upraviť: tabuľku attributes, auditnú tabuľku attribute_revisions a update_attribute_revisions_add_actor, ktorá pridá nullable stĺpce actor na zaznamenanie autora každej zmeny (radí sa za obe migrácie create).

Ak vaše modely vlastníkov používajú kľúče UUID alebo ULID, publikujte pred migráciou konfiguráciu a nastavte key_type — stĺpce vlastníka dostanú typ pri spustení migrácií (pozrite Databázová schéma a model). Stĺpce actor majú vlastný actor_key_type pre prípad, že vaši používatelia majú iné kľúče ako modely vlastníkov.

Voliteľne publikujte konfiguračný súbor:

php artisan vendor:publish --tag="attributes-config"

Jediné publish tagy, ktoré balík vystavuje, sú attributes-migrations a attributes-config.

Prechod na 2.2

Verzia 2.2.0 pridáva 'unique' => 'scope' — jedinečné hodnoty v rámci tímu či tenanta — nad existujúcim indexom unique_hash, takže nepotrebuje migráciu. Definícia s kľúčom unique_scope, ktorej unique nie je scope, odteraz vyhodí výnimku namiesto toho, aby sa kľúč ticho ignoroval. Ďalšia major verzia plánuje premenovať 'unique' => 'owner' na 'owner_type': vždy znamenala jeden spoločný priestor pre celý typ vlastníka, ktorý v aplikácii s viacerými tenantmi zasahuje všetkých tenantov.

Prechod na 2.1

Verzia 2.1.0 pridáva jednu doplnkovú migráciu pre stĺpce actor v revíziách a odteraz vyžaduje illuminate/http (kvôli API resources). Publikujte migrácie znova a spustite ich:

# 2.1.0 adds one migration — the revisions' actor columns
php artisan vendor:publish --tag="attributes-migrations"
php artisan migrate

Vaše publikované migrácie create sa rozpoznajú podľa obsahu a zostanú na mieste; pribudne len update_attribute_revisions_add_actor s novšou časovou pečiatkou. Ak ste publikovanú migráciu create upravili, publisher ju už nerozpozná a pridá druhú kópiu — tú pred migráciou zmažte. Všetko nové je voliteľné: zaznamenávanie autora (history.actor.enabled) aj validácia celej množiny (validation.whole_set) zostávajú vypnuté, kým ich nezapnete, takže prechod nič nemení. Migráciu spustite ešte pred zapnutím zaznamenávania autora — ďalšia major verzia ho plánuje zapnúť predvolene.

Ďalšie kroky

  • Pridajte na model trait a kontrakt HasAttributes.
  • Pripojte prvý typovaný atribút cez Attributes::for($model)->set().
  • Keď chcete validáciu, predvolené hodnoty alebo obmedzenia, zaregistrujte definície.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.