Deface::Override.new(:virtual_path => "spree/layouts/admin",
:name => "backend_logo",
:replace => 'erb[loud]:contains("spree/admin/shared/header")',
:partial => "layouts/backend_navbar")
私が使用している Spree のビルド (安定版 3) に一致する GitHub のものをコピーして、レイアウトの一部を作成しましたが、ロゴをh3
見出しに置き換えました。
機能し、見出しが表示されますが、残り (sidebar-toggle
およびadmin_login_navigation_bar
) はインラインではなくなります。sidebar-toggle
サイドバーの下に座っていて、admin_login_navigation_bar
姿を消しました。
CSS かもしれないと思ったのでh3
、画像タグと同じ id とクラスをタグに付けました<h3>Boogie</h3>
。ロゴを置き換えるだけのオーバーライドなど、おそらくもっと良い方法があることはわかっています。フロントエンドでそれを行いましたが、バックエンドで機能させることができませんでした。今、私はこれで長い間遊んでいたので、この場合に何が得られるかを本当に知りたい.
<% admin = try_spree_current_user.try(:has_spree_role?, "admin") %>
<header class="header <%= admin ? "logged-in" : "logged-out" %>">
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container-fluid">
<div class="row">
<div class="navbar-header col-sm-3 col-md-2">
<h3 id="logo" class: "logo navbar-brand">Boogie</h3>
<% if admin %>
<span class="navbar-toggle" id="sidebar-toggle">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</span>
<% end %>
</div>
<% if admin %>
<div class="col-sm-9 col-md-10">
<div class="navbar-right" data-hook="admin_login_navigation_bar"></div>
</div>
<% end %>
</div>
</div>
</nav>
</header>