Решение о том, когда использовать Deface для Spree (Rails), а когда нет?
Я работаю в магазине электронной коммерции Rails, используя Spree. Есть два способа редактировать интерфейс.
- используя Deface
- Работа с представлениями по умолчанию
Я знаю, что с Deface у нас есть возможности по обновлению Spree. Но когда я думаю об использовании Deface, меня немного смущает, что если он предложит мне полную готовность редактировать любой элемент HTML или нет.
У меня есть тревожная мысль, что Deface используется для небольших изменений, но если вам нужно полностью изменить внешний интерфейс, вы должны манипулировать представлениями по умолчанию, потому что на моем рабочем месте они манипулируют представлениями по умолчанию, поэтому приходит мысль, что если они его используют тогда это означает, что это оптимизированное решение, поскольку оно предлагает большую гибкость.
Это правда, что Deface для незначительного переопределения?
Мне нужно мнение эксперта о том, что использовать для моего личного проекта. Если я проясню свою концепцию по этому вопросу, то смогу вести инженеров в моем офисе, если они делают это неправильно.
2 ответа
Deface полезен, когда вы хотите добавить редактирование или удалить только часть представления (даже контроллер / ы, действия или модели)
Если вы хотите что-то изменить или сделать совершенно другим, вы не хотите использовать Deface, вы переопределяете шаблоны представления напрямую.
Очевидно, что когда вам нужны незначительные изменения, вы используете deface.
Ваша путаница должна заключаться в том, что делать, когда вам нужно изменить не только мелкие детали. Если вам нужно написать больше, чем несколько операторов переопределения deface, это снижает производительность, а также удобочитаемость. Это потому, что как работает deface, он сначала загружает реальный шаблон, а затем заменяет defaces каждый раз, когда шаблон загружается. Я предлагаю, если вам нужно изменить более 30%, вы копируете шаблон из драгоценного камня и редактируете его, а не используете deface.
Да, вы правы, считая, что Deface для незначительных дополнений и корректировок. У нас есть большой сайт электронной коммерции, который работает на Spree, и мы полностью переопределили представления по умолчанию, чтобы использовать нашу тему и макеты во внешнем интерфейсе.
В административной области бэкэнда мы сделали очень мало и полагаемся на Deface для добавления новых функций. Например, мы добавили дополнительные поля в Spree::Product
и чтобы позволить администраторам редактировать эти поля, мы используем Deface, чтобы добавить их на страницу редактирования продукта.
Снова, чтобы принести его домой, для огромных изменений в базовом шаблоне просто скопируйте его и сделайте его своим. Для добавления или изменения частей вида, сохраняя значение по умолчанию, используйте Deface.