gpt4 book ai didi

ruby-on-rails - 如何自定义 Spree 的 View ?

转载 作者:行者123 更新时间:2023-12-04 02:11:40 24 4
gpt4 key购买 nike

我一直坚持使用 Spree 构建一个新的电子商务网站。我尝试覆盖管理员 View ,但我不知道如何创建管理员帐户,因此无法登录。

我还想尝试编辑 gem 本身。我尝试在我的终端上执行“bundle open spree_frontend”并返回“要打开捆绑的 gem,设置 $EDITOR 或 $BUNDLER_EDITOR”我编辑了 .bash_profile 以具有“export EDITOR="subl -w”
export BUNDLER_EDITOR="subl""但我仍然得到相同的响应。

我一直在尝试阅读文档,但被卡住了。任何人都可以给我任何建议或帮助吗?

编辑:我想出了如何让自己成为管理员,但我仍然无法弄清楚如何完全自定义 index.html.erb 或其他 View 。

最佳答案

我不太确定您是否需要知道如何仅更改管理员根索引页面,或者您是否想要自定义任何 View 。所以,这里有两个答案。

有关如何自定义任何 View 的说明:

需要记住的是,Spree 只是一个 Rails 引擎。 All rails engine views can be overwritten by adding a view in the same location on the main rails application. spree 中令人困惑的部分是项目的结构。

如果你看 Spree project on github ,你会看到它被分成四部分: 核心、前端、后端和 API .这些部件中的每一个都像一个小 rails 引擎本身。因此,后端部分将 app/views/spree/admin 文件夹用于所有管理 View 。

秘诀是复制您要自定义的 View ,将其放在应用程序中的正确位置,然后更新它。

因此,如果您尝试自定义管理产品索引页面,go to github并将代码复制到 backend/spree/app/views/admin/products/index.html.erb并将其粘贴到您的项目中的 app/views/spree/admin/products/index.html.erb

我有更详细的说明over on quora ,特别是关于 2.3 版前端更新,如果您认为某些图像可能会有所帮助。

如何自定义管理根索引 View :

2.4 或更高版本

如果您尝试更改管理索引的根路径,则需要为管理根 Controller 创建 Controller 装饰器,并覆盖索引操作,然后在 app/views/spree/admin/root/index 处构建 View .html.erb 让它看起来像你想要的。

app/controllers/spree/admin/root_controller_decorator.rb

module Spree
module Admin
RootController.class_eval do

def index
# add any custom controller code here you need
# it will load the view at app/views/spree/admin/root/index.html.erb
# by convention
end
end
end
end

2.3 或更低版本

早期版本的 spree 只依赖于 routes file to redirect orders#index .只需在您的路由文件中添加一个新条目到您想要引导流量的位置,然后构建一个 controller#action 和 View 来提供内容。

坦率地说,您可以对 2.4 及更高版本执行相同的操作,但较新的版本将身份验证合并到根 Controller 中,因此无需重新发明轮子。

关于ruby-on-rails - 如何自定义 Spree 的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37533643/

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