我正在创建一个应用程序,它必须允许非程序员最终用户自行安装应用程序。
我已经处理了ruby + web服务器+数据库安装部分。现在我必须能够为应用程序设置数据库。我正在考虑运行rake :在InstallationController中安装(只有在安装过程中才能访问)。
有可能吗?我怎么能这么做?
我计划使用Warble和JRuby,所以我不能通过在我的应用程序中使用命令行来完成它。
发布于 2011-12-20 15:29:25
只要数据库存在(或者像sqlite3那样在使用中创建),您就可以在应用程序中抛出一个初始化器,以便很容易地运行迁移。
ActiveRecord::Migrator.migrate(Rails.root.join('db','migrate'))
发布于 2011-12-20 14:56:13
如果数据库没有正确设置,您将无法使用控制器。如果设置必须通过web接口,则可以包括一个小的Sinatra应用程序,它负责DB的创建、迁移等。要做到这一点,您只需执行命令(可以通过反向引用命令来完成):
puts "Migrating database..."
`rake db:migrate`
https://stackoverflow.com/questions/8582041
复制相似问题