I am working on a Rails E-Commerce store using Spree. There are two ways to edit front-end.
I know that with Deface we have Spree upgrading facilities. But when I think about using Deface, I am little confused that if it offers me full fledge leniency to edit any html element or not.
I have a disturbing thought that Deface is used for small changes but if you have to completely change the front-end you have to manipulate with default views because at my job place they are manipulating default views, so thought comes that if they are using it then it means this is optimised solution because it offers more flexibility.
Is it true that Deface is for minor overriding?
I need an expert opinion about what to use for my personal project. If I get my concept clear on this then I can guide engineers at my office, if they are doing it the wrong way.
Deface is useful when you want to add edit or remove just a part of view ( even controller/s, actions or models)
If you want to change a lot of things, or make it totally different, you dont want Deface, you override the view templates directly.
Obiviously, when you need minor changes you use deface.
Your confusion must be what to do when you need to change more than just minor parts right. If you have to write more than a few deface override statements, it hinders the performance, and also the readability. Its because how deface works is, it first loads the actual template and then deface overrides every time the template is loaded. My suggestion is if you need to modify more than 30% you copy the template from the gem and edit it, instead of using deface.