Adding this option ensures that the parse method is called on models whether they are loaded server or client side.
This solves simple issues like parsing a string into a Date, which would work on the first page load but then blow up during a client-side redirect when you try to use an attribute that should be a Date but is still a string.
I believe it also obviates the need for PR #372 and #380. Instead of recursively going through models with attributes that were parsed into models when constructing the initial bootstap data, they can be sent to the client as simple objects, therefore saving some overhead. Then when they're loaded client-side parse will be called, the sub-models will get loaded as models and automatically added to the cache.
Coverage decreased (-0.03%) when pulling d6bd6d7104e3159488db206db699a2b03905c524 on change:md_client_side_parse into ad38fe24926964519f53e9b46b16d44437f3a6f6 on rendrjs:master.
Adding this option ensures that the
parse
method is called on models whether they are loaded server or client side.This solves simple issues like parsing a string into a Date, which would work on the first page load but then blow up during a client-side redirect when you try to use an attribute that should be a Date but is still a string.
I believe it also obviates the need for PR #372 and #380. Instead of recursively going through models with attributes that were parsed into models when constructing the initial bootstap data, they can be sent to the client as simple objects, therefore saving some overhead. Then when they're loaded client-side parse will be called, the sub-models will get loaded as models and automatically added to the cache.
@saponifi3d @mrubens