【问题标题】:How to re-use models and controllers across rails applications如何在 Rails 应用程序中重用模型和控制器
【发布时间】:2013-03-01 07:51:08
【问题描述】:

我们正在为我们的应用程序中的新功能提出一个新的twitter bootstrap 主题。 我们现有的功能将使用models/controllers 的现有主题。

但我想重新使用现有的models/controllers 并将新的 twitter 引导主题用于新功能。

我该如何解决这个问题并维护代码库(旧应用程序将在 host:port1 上,新应用程序将在 host:port2 上)

编辑:

public/javascripts public/stylesheets 下的旧 Rails 应用程序。 部分观点在app/views/foos/下 部分观点在app/views/bars/

我会app/views/cars/下的新观点 我应该如何引用我的新索引文件以指向app/assets下的新theme/css

【问题讨论】:

    标签: ruby-on-rails twitter-bootstrap twitter-bootstrap-rails


    【解决方案1】:

    您可以在 css 清单文件之间切换。所以对于新主题,它可能就像

    new_theme.css
     /*
     *= bootstrap_alternative_theme
       ... 
     */
    
    old_theme.css
     /*
     *= bootstrap_original_theme
       ... 
     */   
    

    还有 layouts/application.html.erb

    <% if request.port == port1 %>
       <%= stylesheet_link_tag  "old_theme" %>
    <% else %>
       <%= stylesheet_link_tag  "new_theme" %>
    <% end %>
    

    【讨论】:

      【解决方案2】:

      要添加到 benchwarmer 答案,您可能需要修改 html 和 javascript,以便您可以定义新布局并根据需要在新旧布局之间切换。

      但是为了编译这些资产,假设你的资产没有命名为 application.css 或 application.js,在你的 application.rb 中添加一行

      config.assets.precompile += %w(new.css new.js)
      

      【讨论】:

      • 感谢您的回复!我尝试了你的建议,但没有效果,我无法获得新的布局,它仍然保留现有的主题!
      • @diya,你用的是哪个版本的rails,是
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-09
      • 2011-08-06
      相关资源
      最近更新 更多