Eri*_*yle 4 ruby ruby-on-rails e-commerce spree
我一直致力于使用 Spree 构建一个新的电子商务网站。我尝试过覆盖管理员视图,但我不知道如何创建管理员帐户,因此无法登录。
我还想尝试编辑宝石本身。我尝试在终端上执行“bundle open spree_frontend”,然后返回“要打开捆绑的 gem,请设置 $EDITOR 或 $BUNDLER_EDITOR” 我编辑了 .bash_profile 以具有“export EDITOR=”subl -w” 导出 BUNDLER_EDITOR=“subl” ”但我仍然得到同样的回应。
我一直在尝试阅读文档,但我被困住了。有人可以给我任何建议或帮助吗?
编辑:我想出了如何让自己成为管理员,但我仍然不知道如何完全自定义index.html.erb或其他视图。
我不太确定您是否需要知道如何仅更改管理根索引页面,或者是否想要自定义任何视图。所以,这里有两个答案。
有关如何自定义任何视图的说明:
需要记住的是,Spree 只是一个轨道引擎。 所有 Rails 引擎视图都可以通过在主 Rails 应用程序的同一位置添加视图来覆盖。spree 令人困惑的部分是该项目的结构。
如果你查看github 上的 Spree 项目,你会发现它分为四个部分:核心、前端、后端和 api。每个部件本身就像一个小型轨道发动机。因此,后端部分使用 app/views/spree/admin 文件夹来存储所有管理视图。
秘诀是复制要自定义的视图,将其放在应用程序中的正确位置,然后更新它。
因此,如果您尝试自定义管理产品索引页面,请转到 github并复制backend/spree/app/views/admin/products/index.html.erb中的代码,然后将其粘贴到您的项目中 app/views/狂欢/admin/products/index.html.erb
如果您认为一些图片可能有帮助,我在 quora 上有一些更详细的说明,特别是关于 2.3 版前端更新的说明。
如何自定义管理根索引视图:
2.4 或更高版本
如果您尝试更改管理索引的根路径,则需要为管理根控制器创建一个控制器装饰器,并覆盖索引操作,然后在 app/views/spree/admin/root/index 构建一个视图.html.erb 使其看起来像您想要的那样。
应用程序/控制器/狂欢/管理/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
Run Code Online (Sandbox Code Playgroud)
版本 2.3 或更低
早期版本的 spree 仅依赖路由文件来重定向 order#index。只需在路由文件中添加一个新条目到您想要引导流量的位置,然后构建一个控制器#action 和视图来提供内容。
坦率地说,您可以对 2.4 及更高版本执行相同的操作,但较新的版本将身份验证合并到根控制器中,因此无需重新发明轮子。
| 归档时间: |
|
| 查看次数: |
2251 次 |
| 最近记录: |