重命名Ruby on Rails应用程序

oha*_*na 24 ruby-on-rails

有没有办法在Rails 2中重命名应用程序?

小智 27

您可以使用https://github.com/morshedalam/rename重命名Rails 3应用程序

  • 也使用导轨4. (3认同)

rao*_*dev 23

文件中必须重命名应用程序的位置数(Rails 3.1),否则您将无法启动服务器.所以做以下事情:

1)重命名目录

2)module (yourapp)在Application.rb文件中重命名.

3)(yourapp)::Application在以下文件中重命名:

的environment.rb

的routes.rb

config.ru

Rake文件

初始化/ secret_token.rb

初始化/ session_store.rb

environment/test.rb,production.rb和development.rb

4)您还可以将config.database.yml.sqlite3中的数据库重命名为(yourapp)_development,(yourapp)_test等.在这种情况下,可能需要重新加载数据库.我使用了yaml_db gem并且rake db:reload这样做并且工作了.

应该这样做.


And*_*fer 9

我在重命名Rails 3应用程序时遇到了一些麻烦.然后我找到了这个插件,它就像一个魅力.


Chr*_*ris 8

Rails 2实际上没有应用程序"名称"的概念.唯一标识您的应用程序的是文件夹本身的名称.

在Rails 3中,它有点不同.Rails 3项目与名称中定义的模块间隔开config/application.rb.此应用程序模块用于容纳您的应用程序,你会看到你引用的config.ru,config/routes.rb,config/environment.rb和所有的定义环境config/environments/.

如果你要打开一个终端会话并运行命令rails new myapp,你的config/application.rb文件将定义模块Myapp,在其中将定义一个Application类,它扩展了Rails :: Application.所有其他文件都将引用Myapp::Application.

在Rails 2和3中,您将找到定义的会话的字符串键config/initializers/session_store.rb,它采用默认值"_ <myapp> _session".它并不真正与应用程序的"名称"绑定,但您应该尝试保持同步,以防止任何意外的会话密钥名称与其他应用程序冲突.


And*_*oni 2

只需重命名应用程序目录即可,仅此而已。我做了好几次,没有问题。