【问题标题】:How to rename a rails 5 application?如何重命名 Rails 5 应用程序?
【发布时间】:2017-07-08 15:53:31
【问题描述】:

rename gem 是重命名我的 rails 5 应用程序的最佳方式吗?

另外,在重命名我的应用程序时有什么需要注意的地方吗?

【问题讨论】:

标签: ruby-on-rails


【解决方案1】:

重命名您的 rails 5 应用程序更加简单!

在您的 rails 项目中打开 config/application.rb 文件,您会看到一个与您的应用同名的模块。您需要做的就是将模块名称更改为您喜欢的应用名称。

除此之外,还有其他一些对旧应用名称的引用,但不需要更改它们。例如,查看 config/initializers/session_store.rb,其中会话 cookie 名称仍使用旧的应用程序名称。但是您的 IDE/编辑器中古老的“查找所有”功能可能会对您提供这些参考资料。

【讨论】:

    【解决方案2】:

    以下内容对我有用:

    1. gem "rename" 添加到您的 Gemfile 中
    2. bundle
    3. rails g rename:into NEW_NAME

    请注意,这将使用新应用名称创建一个新文件夹,将所有文件移动到新文件夹并删除旧应用。因此,如果需要,请返回。修改的文件有:

    gsub  Gemfile.lock
    gsub  Gemfile
    gsub  config.ru
    gsub  README.md
    gsub  package.json
    gsub  Rakefile
    gsub  config/puma.rb
    gsub  config/environments/production.rb
    gsub  config/environments/test.rb
    gsub  config/environments/development.rb
    gsub  config/routes.rb
    gsub  config/initializers/assets.rb
    gsub  config/initializers/cookies_serializer.rb
    gsub  config/initializers/content_security_policy.rb
    gsub  config/initializers/application_controller_renderer.rb
    gsub  config/initializers/wrap_parameters.rb
    gsub  config/initializers/mime_types.rb
    gsub  config/initializers/backtrace_silencers.rb
    gsub  config/initializers/filter_parameter_logging.rb
    gsub  config/initializers/inflections.rb
    gsub  config/application.rb
    gsub  config/spring.rb
    gsub  config/boot.rb
    gsub  config/environment.rb
    gsub  config/initializers/session_store.rb
    

    更多信息在这里:http://www.adamscott.io/blog/2014/01/21/renaming-a-ruby-on-rails-application

    【讨论】:

      【解决方案3】:

      使用最流行的文本编辑器和 IDE,您可以在所有项目文件中搜索字符串。如果您使用 Sublime Text,您可以使用键盘快捷键 Ctrl++F 或使用 Find > Find in files,正如here所解释的那样。

      请记住,您的应用名称可能会以下列格式显示:

      • MyAppName(application.rb
      • 我的应用名称
      • my_app_name
      • 我的应用名称(在布局中)

      就我而言,对于Rails 5.1.6 应用程序,我必须编辑以下文件:

      • config/application.rb
      • config/cable.yml
      • config/database.yml(如果您想更改数据库名称)
      • config/environments/production.rb
      • app/views/layouts/application.html.erb
      • package.json
      • app/mailers/*(更改邮箱from地址)
      • config/initializers/devise.rb (config.mailer_sender)

      【讨论】:

      • 文本编辑器没有“项目文件”的概念
      • 这可以更好地使用正则表达式。假设你的项目名称是Test Web,Ctrl + Shift + F,开启Regular Expressions,关闭Case Sensitive,In Find field type :test(-|_| |)web,在Where字段类型:-tmp/,-log/,按查找按钮。最后一个是排除 tmp/ 和 log/ 文件夹。
      【解决方案4】:

      “查找和替换”方法是有风险的,因为它可能会破坏 URL 或路由。

      改为将gem 'rename' 添加到您的gemfile 中,然后运行bundle install

      那么简单:

      rails g rename:into your_new_app_name

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-10-30
        • 1970-01-01
        • 1970-01-01
        • 2015-03-06
        • 2014-05-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多