更改rails_admin中的徽标

时间:2011-01-27 11:04:12

标签: ruby-on-rails ruby-on-rails-plugins

我很喜欢来自https://github.com/sferik/rails_admin的rails_admin插件,但我不能在我的生活中获取我的自定义徽标来替换已安装的徽标。

任何人都知道如何实现这一目标?我已经尝试覆盖css和rails_admin目录/ fil结构,但它没有选择我的更改。

任何人都对如何解决这个问题有任何见解?

8 个答案:

答案 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
}