You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From the docs:
This method name should correspond to the "camel case" representation of the true underlying model attribute / database column when applicable.
e.g
first_name attribute should have a firstName method that returns \Illuminate\Database\Eloquent\Casts\Attribute which is then accessible by $model->first_name
name attribute should have a name method that returns \Illuminate\Database\Eloquent\Casts\Attribute which is then accessible by $model->name
When extending laravel-mongodb Model class, If model has an attribute accessor method which is one word. i.e the name example from above, its being treated like a relationship.
Description:
Attribute accessors not working when accessor method is one word when using laravel 9 Attributes convention: https://laravel.com/docs/9.x/eloquent-mutators#defining-an-accessor
From the docs:
This method name should correspond to the "camel case" representation of the true underlying model attribute / database column when applicable.
e.g
first_name
attribute should have afirstName
method that returns\Illuminate\Database\Eloquent\Casts\Attribute
which is then accessible by$model->first_name
name
attribute should have aname
method that returns\Illuminate\Database\Eloquent\Casts\Attribute
which is then accessible by$model->name
When extending laravel-mongodb Model class, If model has an attribute accessor method which is one word. i.e the
name
example from above, its being treated like a relationship.I've done some logging and believe this line is the issue:
https://github.com/jenssegers/laravel-mongodb/blob/master/src/Eloquent/Model.php#L158
Potential fix is don't call
getRelationValue()
if the return type of the method is\Illuminate\Database\Eloquent\Casts\Attribute
like what happens in base laravel model? https://github.com/laravel/framework/blob/9.x/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php#L572The text was updated successfully, but these errors were encountered: