2016-03-19 8 views
1

私はSpreeを使用してRails E-Commerceストアで作業しています。フロントエンドを編集するには2つの方法があります。デフォルトのビューの操作改ざん Deree for Spree(Rails)をいつ使うべきか、そうでないときはどうなるのか?

  • を使用して

    私が改ざんして、我々はシュプレー川のアップグレード施設を持っていることを知っています。しかし、私がDefaceを使うことを考えると、html要素を編集するために完全なfledge leniencyを提供するのであれば、私は少し混乱しています。

    Defaceは小さな変更に使用されていますが、フロントエンドを完全に変更する必要がある場合は、私の職場でデフォルトビューを操作しているため、デフォルトのビューで操作する必要があります。彼らはそれがより柔軟性を提供するので、これは最適化されたソリューションであることを意味します。

    Defaceがマイナーオーバーライドするのは本当ですか?

    私の個人的なプロジェクトに何を使用するかについて専門家の意見が必要です。このことについて私の考えを明確にすれば、間違ったやり方でエンジニアを私のオフィスに導くことができます。

  • 答えて

    1

    あなたが編集を追加したり、ビュー(さえコントローラ/ sの、アクションやモデル)のほんの一部を削除したいとき改ざんが便利です

    あなたは多くのことを変更したい場合、またはそれが全く異なるように、 Defaceが必要ない場合は、ビューテンプレートを直接オーバーライドします。

    微妙な変更が必要な場合は、defaceを使用してください。

    あなたの混乱は、マイナーな部分だけを変更する必要があるときに行うべきことでなければなりません。いくつかのデフェース・オーバーライド・ステートメントを書く必要がある場合は、パフォーマンスと可読性を妨げます。 Defaceがどのように機能するのかという理由から、最初に実際のテンプレートをロードしてから、テンプレートがロードされるたびにオーバーライドされます。私の提案はです。もしあなたがdefaceを使うのではなく、宝石からテンプレートをコピーして編集すれば、3030%以上を変更する必要があります。

    +0

    はい。どうもありがとう。私は昨夜、Defaceを研究して使いました。私もそう感じました。 Defaceはちょっとした変更のためのものです。私のプロジェクトは全く新しいテーマを実装することです。私は今はっきりしています。感謝。 –

    +0

    あなたをお待ちしております。 – krazedkrish

    0

    はい、あなたはDefaceがマイナーな追加や調整のためのものだと思うのは間違いありません。私たちはSpreeで動作する大規模な電子商取引サイトを運営しており、フロントエンドでテーマとレイアウトを使用するためにデフォルトビューを完全にオーバーライドしています。

    バックエンドの管理領域では、ほとんど機能していないし、Defaceに依存して新しい機能を追加しています。たとえば、Spree::Productに余分なフィールドを追加し、管理者がDefaceを使用してこれらのフィールドを編集して商品編集ページに追加できるようにしました。

    また、それを家に持ち帰るには、基本テンプレートを大きく変更してコピーして、自分で作成してください。デフォルトを維持したままビューの一部を追加または変更するには、Defaceを使用します。

    +0

    お返事ありがとうございました。しかし、Defaceや編集テンプレートの使用について決定する必要があるため、Defaceと一緒に勉強しているので、さらに議論したいと思います。 –

    +0

    Defaceフックシステムを使用したくないセクションを隠し、Defaceを使用して独自の部分(自分のhtmlデザインエレメントを含む)で既存の部分を上書きし、新しいセクションを次のように追加することで、完全に異なるテーマを実装することはできません。あなたが望むところでDefaceを使います。何かをするのに十分な柔軟性はありませんか? –