我很喜欢来自https://github.com/sferik/rails_admin的rails_admin插件,但我不能在我的生活中获取我的自定义徽标来替换已安装的徽标。
任何人都知道如何实现这一目标?我已经尝试覆盖css和rails_admin目录/ fil结构,但它没有选择我的更改。
任何人都对如何解决这个问题有任何见解?
答案 0 :(得分:4)
如果你现在想要这样做,有一个支持的方法 - 只需通过在app/views/rails_admin/main/_title.html.erb
(或.haml或其他)创建文件来覆盖标题部分。
我的实例包含:
%h1.title
= link_to rails_admin_dashboard_path do
= image_tag "design/admin_logo.png"
答案 1 :(得分:2)
我想您只需更改徽标,将徽标放在应用程序的这个位置:
public/images/rails_admin/logo.png
答案 2 :(得分:1)
我不知道这是否正确,如果rails_admin作者也想要你,但是一个脏方法是进入你的rails_admin gem并重命名(或删除)资产文件夹,这样Rails就找不到Rack资产所以它你复制过的Rails的后备:
rake admin:copy_assets
然后您只需修改应用公共目录中的那些。
我知道这是一种黑客行为,如果你更新宝石,你将不得不再次这样做。 而且,我不知道这是一个很好的建议,因为我不知道Rails管理员作者的政策。
答案 3 :(得分:1)
您可以将位于gem安装文件夹(bundle show rails_admin)中的 / app / views / layouts / rails_admin 文件夹复制到项目的 app / views / layouts 文件夹。然后你可以在行上修改_header.html.erb partial:
span class="image_replacement"><%= @plugin_name %>
希望这有帮助
答案 4 :(得分:1)
另一种方法是:
before_filter :if => Proc.new{ |c| c.request.path =~ /admin/ } do
@head_stylesheet_paths = ['admin_screen.css']
end
然后你重写了一个非常重要的image_replacement类。
.image_replacement{
background-image:url(...) !important;
}
答案 5 :(得分:0)
在挖掘并询问rails_admin google群组后,目前似乎不支持此功能。
答案 6 :(得分:0)
更换
public/images/rails_admin/logo.png
只要你也这样做就应该工作:
rake admin:copy_assets
作为安装的一部分。
答案 7 :(得分:0)
你可以用纯粹的scss非常容易地做到这一点。有时最简单的方法可行:)
.navbar-inner {
background-image: image_url('logo.png');
background-size: auto $navbar-height; // put your own sizes here
background-repeat: no-repeat;
}
.brand {
display: none !important; //get rid of the text
}