Deface::Override.new(:virtual_path => "spree/layouts/admin",
:name => "backend_logo",
:replace => 'erb[loud]:contains("spree/admin/shared/header")',
:partial => "layouts/backend_navbar")
我在GitHub上复制了一个与我正在使用的Spree的构建版本(稳定版本3)相匹配的版本,但是用h3
标题替换了Logo。
它有效,标题出现但其余部分(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>