Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Relationship Events Laravel Package

chelout/laravel-relationship-events

Adds missing Eloquent relationship events to Laravel models. Use simple traits (HasOne/Many, BelongsTo/Many, Morph*) to listen for attach/detach/sync, saved/updated, and other relation lifecycle hooks with parent/related context and IDs/attributes.

View on GitHub
Deep Wiki
Context7
v5.0.0

Highlights

  • Laravel 13 support — now requires illuminate/* ^13.0 and PHP ^8.3.
  • Added #[\Override] attributes and native return types across relation classes and event traits for full PHP 8.3+ type safety.
  • CI now tests against stable Laravel 13 on PHP 8.3 and 8.4 (prefer-lowest and prefer-stable), exercising the real consumer install path instead of dev snapshots.
  • Added test coverage for morphToMany toggle events and argument-less detach().

Compatibility

Package Laravel PHP
v5.x 13.x ^8.3
v4.x 12.x ^8.2
v3.x 11.x ^8.2
v2.x 10.x ^8.1

Full Changelog: https://github.com/chelout/laravel-relationship-events/compare/v4.0.0...v5.0.0

v4.0.0
v3.0.0
v2.0.0
v1.5.0
1.4.0

Added PHP 8 support. Thanks @nhedger !

v1.3.0
v1.2.1

Fixed #34

v1.2.0
v1.1.2

Nothing new, just moved to github actions.

v1.1.1
v1.1.0
  • Dropped 5.8 support
v1.0.0

Changed

  • Added Laravel 5.8 compatibility
  • Breaking change droped Laravel 5.5, 5.6, 5.7 compatibility
v0.6.3
  • Fixed Laravel 5.5 compatibility.
v0.6.2
  • Fixed custom model event ids and attributes
v0.6.1

Changed

  • Fixed HasBelongsToEvents not passing relation name to custom model event
v0.6

Changed

  • Breaking change changed parameters passed to custom event classes. (#4)
v0.5.1

Changed

  • Removed dding
  • Style fixes
v0.5

Added

  • Laravel 5.7 support.

Changed

  • Breaking change added HasDispatchableEvents trait in order to pass additional parameters to custom event classes. (#4)
v0.4

Added

  • observer classes support for relationships events
v0.3.3

Finished documentation.

v0.3.2

Changed

  • requirements (Laravel 5.5 or Laravel 5.6)
v0.3.1

Added

  • StyleCI

Changed

  • Style fixes
v0.3

Added

  • Laravel 5.5 support (#1)

Changed

  • Breaking change Moved HasAttributesMethods trait methods to static methods of helper class AttributesMethods.
  • Documentation
v0.2

It is possible to fire event classes via $dispatchesEvents properties:


use Chelout\RelationshipEvents\Relationships\Concerns\HasOneEvents;
use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    use HasOneEvents;

    protected $dispatchesEvents = [
        'hasOneSaved' => HasOneSaved::class,
    ];

}
v0.1

Added relationships:

  • One To One
  • One To Many
  • Many To Many
  • One To One Polymorphic Relations
  • One To Many Polymorphic Relations
  • Many To Many Polymorphic Relations
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor