gpt4 book ai didi

ruby-on-rails - 大肆破坏以覆盖图像

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:45 25 4
gpt4 key购买 nike

我是 Ruby on Rails 的新手,我正在开发一个基于 spree gem 的小型电子商务网站。

但是我想使用 spree deface 库更新/覆盖网站的前端部分。

Deface::Override.new(:virtual_path => 'spree/shared/_header',
:name => 'change store logo',
:replace => 'figure#logo',
:text => "<%= image_tag('/images/logo.png') %>"

这是我的代码,但在重新加载页面后, Logo 仅被替换为“ Logo ”一词,而不是图像本身。我的目标是错误的路径吗? override的图片文件放在哪里?

这是页面的html:

    <div id="spree-header">
<header id="header" data-hook>
<div class="container">
<div class="row">
<figure id="logo" class="col-md-4 col-sm-3" data-hook>
<%= logo %>
</figure>
<%= render partial: 'spree/shared/nav_bar' %>
</div>
</div>
</header>
<div class="container">
<%= render partial: 'spree/shared/main_nav_bar' %>
</div>
</div>

谢谢!

最佳答案

我知道它是如何工作的。

我需要以 Ruby Assets 管道为基础,因此图像的路径应该位于:railsapplication/apps/assets/images/*.png 以用作 deface 的覆盖。

另外代码应该是:

    Deface:: Override.new(:virutal_path => 'spree/shared/_header', #change this at need
:name => 'change store logo', #optional
:replace => 'figure#logo' #id that will be replaced located at /_header
:text => "<%= link_to image_tag('logos/logo_small.png') %>, #Ruby tag included
)

并且应该可以正常工作。

关于ruby-on-rails - 大肆破坏以覆盖图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53482448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com