0

spree_bootstrap gem を追加してインストールした Spree Commerce アプリケーションがあります。

gem 'spree_bootstrap', github: 'jdutil/spree_bootstrap'

ジェムファイルに。

メインページには、使い慣れたすべてのブートストラップ div が<div class="container row">およびとして表示され<ul id="main-nav-bar" class="inline">ます。

私は Rails を初めて使用し、独自のカスタム ナビゲーション バーやその他の微調整を追加してレイアウト マスターページを変更したいと考えています。残念ながら、application.html.rb は実質的に空のページであり、変更を加えるべきページではないと思います。

私の質問は、標準の div 値をオーバーライドまたは変更するにはどうすればよいですか? ローカルにファイルがありません。Deface をツールとして使っていると聞いたことがありますが、使い方がわかりません。

ここで誰かが、標準のブートストラップ Spree アプリケーションの変更についてさらに洞察を提供してくれることを願っています。

4

2 に答える 2

2

まず、この質問は他のいくつかの SO 質問で重複していると思います。でも、昨日これを処理したので、答えを出すと思いました。

deface gem (Spree がビューをオーバーライドできるようにするために使用するもの) を確認する必要があります。ファイル<ul id="main-nav-bar" class="inline">app/views/spree/shared/_nav_bar.html.erb. _ _ 実際に使用するセレクターがあるファイルを見つける必要があることに注意してください。

# app/overrides/my_override.rb
Deface::Override.new(virtual_path: "spree/shared/nav_bar",
                     name: "my_navbar",
                     replace: "ul#main-nav-bar") do
  <<-HTML
  <nav class='navbar navbar-default navbar-fixed-top'>
    <div class='container'>
      ...
    </div>
  </nav>
  HTML
end

さらにヘルプが必要な場合は、ドキュメントを参照してください。gem のコンテンツをコピーして貼り付けてオーバーライドすることは、絶対にお勧めできません。

于 2015-01-13T10:46:42.813 に答える