2009-11-16 80 views
1

我是Ruby on Rails(PHP开发人员)的新手,我需要编辑现有的ROR项目。我一直在为我的PHP项目使用Aptana Studio(在Aptana 2.0之后切换到Zend),但我为我的红宝石项目保留了Aptana RadRails。如何导入现有的ROR项目?

所以我想要做的是从服务器(它托管在某台Linux机器上)获取ROR项目并将其导入RadRails进行本地开发。我已经从服务器上下载了这些文件,并将它们导入到一个新的RadRails ROR项目中,但它不能按预期工作。还有什么我该做的?我读过'冻结宝石',切换到生产模式并在发布后将数据库转储到ROR项目。是否需要一些步骤来撤消这些操作?

更新: 我遇到的问题是,当我尝试在浏览器中显示不同控制器的页面时,出现各种错误。

ActionController::InvalidAuthenticityToken in 
No :secret given to the #protect_from_forgery call. Set that or use a session store capable of generating its own keys (Cookie Session Store). 

OR

no such file to load -- xml 
This error occurred while loading the following files: 
    hotels_pro 
    xml 

这使我相信,(也许)我还没有得到所有文件。另一方面,我进行了双重检查,并从服务器获取所有文件。

感谢,

+1

没有像SVN或GIT那样的任何SCM存储库,您可以直接获取数据? – 2009-11-16 13:25:41

+0

不是我所知道的。但这是一个好主意,我会检查一下! – Brayn 2009-11-16 13:37:07

+0

我问过并且没有这样的存储库... – Brayn 2009-11-17 15:46:10

回答

3

一个RoR应用程序比它的源文件只是总和。还有数据库,gems和一个服务器,它们存在于项目目录之外。我们不知道究竟什么不是,我们只能推测是哪一个会给你带来问题。作为Rails的新手,这可能都是他们的全部。如果毕竟这还没有启动并且运行几轮“谷歌的错误”应该解决你。

在继续之前,您需要在开发环境中设置这些内容。下面假设你有一个可用的ruby环境:rubygems与rails一起安装,并且rake gems。请注意,后面的任何命令和路径都与您的rails项目的根目录有关。

数据库:

  • 开始与编辑的config/databases.yml里找出哪些数据库您的应用程序会尝试连接到。如有必要,请更改它,以便命名本地数据库。创建该数据库,如果它不存在$rake db:create

  • 如果您需要现有数据进行测试,您可以从生产数据库中获取转储并将其导入到您的工作数据库中。如何做到这一点取决于有问题的数据库的类型。 (假设以前的开发设计与迁移数据库),否则,你可以用$ rake db:migrate运行迁移到生产开发数据库

宝石:

  • 检查到config/environment.rb ,为您所需的宝石列表。如果尚未安装所有这些宝石,请安装它们。

  • 如果您使用的是Rails 2。1或更新版本,您可以通过确保使用较新的config.gem 'this_gem'表单而不是较早的require 'this_gem'声明来确保所有宝石是必需的,从而简化此过程。一旦所有必需的宝石都以这种形式出现,您可以使用$ rake gems:install && rake gems:build确保它们都已安装。

服务器:

是很琐碎,所有的轨instalations配网砖这是好的发展。但杂种也适合。

P.S.如果你没有使用某种版本控制,强烈建议在开始之前设置一些内容。这不是要求,但它可能会在某些时候节省你的屁股。

+1

我会将'可能'更改为'将'。 – 2009-11-16 18:24:33

+0

感谢您的详细回复!我有一个使用RadRails的开发环境设置,它具有ruby,rails,gems,rake,并且还提供了一个Mongrel/Webrick服务器用于测试。以前的开发人员并没有使用版本控制系统,所以我不能只是签出项目,但我们确实使用SVN,因此应该可以。我在安装这两个必需的gem时遇到了一些问题,但是在添加github作为宝石源之后,这一切都可以。此外,我用我遇到的问题更新了我的问题。 再次感谢。 – Brayn 2009-11-17 12:13:15

相关问题