Ruby on rails 什么';这是覆盖gem视图的合适方法吗?

Ruby on rails 什么';这是覆盖gem视图的合适方法吗?,ruby-on-rails,rubygems,Ruby On Rails,Rubygems,我认为将整个gem解包到我的应用程序中会有些过分。有没有办法只覆盖它提供的单个视图 此gem是spree_easy_contact,允许您轻松地将联系人表单添加到spree应用程序中。我只想篡改其中一个视图,说些其他的话。如果gem是命名空间的,那么您可以在本地应用程序中为视图命名。例如,如果gem的名称空间为best_gem_,则您的应用程序结构如下所示: app - assets - controllers - helpers - mailers - models - views - - b

我认为将整个gem解包到我的应用程序中会有些过分。有没有办法只覆盖它提供的单个视图


此gem是spree_easy_contact,允许您轻松地将联系人表单添加到spree应用程序中。我只想篡改其中一个视图,说些其他的话。

如果gem是命名空间的,那么您可以在本地应用程序中为视图命名。例如,如果gem的名称空间为best_gem_,则您的应用程序结构如下所示:

app
- assets
- controllers
- helpers
- mailers
- models
- views
- - best_gem_ever
- - - wonderful_controller
- - - - index.html.erb
在我的工作中,我们有目的地使用这种技术来允许客户端覆盖前端视图,同时仍然从gem中提取管理视图。它工作得非常好

需要注意的是,如果您创建了存储在本地资产文件夹中的任何资产文件,那么由于某种原因,资产管道不会将其拾取。必须将它们显式添加到config.assets.precompile列表中


希望有帮助

哪颗宝石?设计(在黑暗中拍摄)?我们真的需要更多的信息,有些宝石很容易做到这一点,而另一些宝石则不那么容易。例如,在“设计”的情况下,您只需修改管线并自己覆盖视图。其他人可能不会这么简单。它是一个gem,为spreet提供了一个联系方式。它可以工作,但如果gem作为引擎安装,加载模块会中断。