[5.6] Add ability to extend DatabaseNotification model attributes on create #23337
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Building of attributes array for the
Illuminate\Notifications\DatabaseNotification
model insideIlluminate\Notifications\Channels\DatabaseChannel
extracted to method, what allow us to extend or overwrite default attributes.I found it useful because I were needed to add
seen_at
and some more attributes related to my application and were needed to extend defaultDatabaseNotification
model. And instead just modifying attributes inDatabaseChannel
class on notification creation, we need to copy-pastesend
method. That means that if there will be changes insend
method in the future - we will require to update extended implementations.With this change we can do:
Additionally it helps us to keep the code DRY.