Force eloquent to use mutators during serialization
up vote
0
down vote
favorite
Is there a way to force eloquent to use mutators when serializing data? I am currently converting my app to use vue.js and several fields are computed within the model, which I need to be included, in the serialized data.
EloquentModel - make toArray() utilize mutators
I understand why Taylor does not honour mutators but is there a way to override this behaviour?
php mysql laravel eloquent mutators
add a comment |
up vote
0
down vote
favorite
Is there a way to force eloquent to use mutators when serializing data? I am currently converting my app to use vue.js and several fields are computed within the model, which I need to be included, in the serialized data.
EloquentModel - make toArray() utilize mutators
I understand why Taylor does not honour mutators but is there a way to override this behaviour?
php mysql laravel eloquent mutators
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
Is there a way to force eloquent to use mutators when serializing data? I am currently converting my app to use vue.js and several fields are computed within the model, which I need to be included, in the serialized data.
EloquentModel - make toArray() utilize mutators
I understand why Taylor does not honour mutators but is there a way to override this behaviour?
php mysql laravel eloquent mutators
Is there a way to force eloquent to use mutators when serializing data? I am currently converting my app to use vue.js and several fields are computed within the model, which I need to be included, in the serialized data.
EloquentModel - make toArray() utilize mutators
I understand why Taylor does not honour mutators but is there a way to override this behaviour?
php mysql laravel eloquent mutators
php mysql laravel eloquent mutators
asked Dec 7 '17 at 9:56
user2834482
87310
87310
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55
add a comment |
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
Before returning the model, you can do this
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
if you want to use it on a collection :
$collection->each(function($model) $model->setAppends(...); );
add a comment |
up vote
0
down vote
You can define which getters should be serialized like this:
protected $appends = ['is_admin'];
More info: Appending Values to JSON
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
Before returning the model, you can do this
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
if you want to use it on a collection :
$collection->each(function($model) $model->setAppends(...); );
add a comment |
up vote
1
down vote
Before returning the model, you can do this
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
if you want to use it on a collection :
$collection->each(function($model) $model->setAppends(...); );
add a comment |
up vote
1
down vote
up vote
1
down vote
Before returning the model, you can do this
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
if you want to use it on a collection :
$collection->each(function($model) $model->setAppends(...); );
Before returning the model, you can do this
$model->setAppends(['mutator_1', 'mutator_2']);
return $model->toArray();
if you want to use it on a collection :
$collection->each(function($model) $model->setAppends(...); );
answered Dec 7 '17 at 10:21
Mathieu Ferre
1,264322
1,264322
add a comment |
add a comment |
up vote
0
down vote
You can define which getters should be serialized like this:
protected $appends = ['is_admin'];
More info: Appending Values to JSON
add a comment |
up vote
0
down vote
You can define which getters should be serialized like this:
protected $appends = ['is_admin'];
More info: Appending Values to JSON
add a comment |
up vote
0
down vote
up vote
0
down vote
You can define which getters should be serialized like this:
protected $appends = ['is_admin'];
More info: Appending Values to JSON
You can define which getters should be serialized like this:
protected $appends = ['is_admin'];
More info: Appending Values to JSON
answered Nov 10 at 4:29
4unkur
6118
6118
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f47692245%2fforce-eloquent-to-use-mutators-during-serialization%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
what version of laravel are you using ... do you mean accessors (get mutator)? in modern versions the serialized output uses the accessors/mutators
– lagbox
Dec 7 '17 at 12:55