402v /posts/railskai-fa-huan-jing-wen-ti-zheng-li-he-chang-jian-ming-ling

Rails开发指南 - 问题整理和常见命令

From where: Rails开发指南 - Capistrano 3实现Rails自动化部署

最后说一下我再Rails项目配置过程中遇到的一些问题及可能的解决方案,希望对大家有帮助。后续会详细的整理。

#Q&A(待整理)

  1. 首次运行cap deploy时显示:repo' already exists and is not an empty directory错误;
  2. 第二次运行cap deploy时显示:An error occurred while installing activesupport (4.0.0), and Bundler cannot
  3. set :pty, true后输入密码没反应
  4. cap之后没有css、js等:因为没有uncommentrequire 'capistrano/rails/assets'这句话,所以deploy不会做 precompile
  • so
  • nginx 增加静态文件索引:
  1. Errno::ENOMEM: Cannot allocate memory - node
  1. 运行了precompile之后仍然不能显示css和js,查看页面是因为页面缓存了原先的precomfile文件,而不是服务器上的正确文件:

  1. cap deploy的时候报错fatal: destination path '/home/deploy/apps/aboutme/repo' already exists and is not an empty directory.,原因上是git clone --mirror命令执行了两次,而最根本的原因是在配置deploy files的时候,同一个rolerole :app, %w{deploy@oneboxapp.com}配置了两次,如图:

so上的解释

terminal里面报错的截图:

  1. 报错failed to create symbolic link '/home/deploy/apps/aboutme/releases/20151101035433/config/database.yml' DEBUG [205b27ed] : File exists,原因是database.yml文件应该是个link而不是直接把rails new生成的database.yml文件上传,在.gitignore中忽略database.yml之后,执行mv database.yml database.example.yml然后commit,删掉git库中的此文件,再次cap deploy就可以了。

#Rails开发常用命令

  1. rake routes

  2. rake db:create

  3. rake db:migrate

  4. 创建controller及controller的index行为:rails generate(g) controller welcome index

  5. 创建Model:rails generate model Post title:string text:text

  6. MVC销毁:

     rails destroy controller lalala
     rails destroy model yadayada
     rails destroy scaffold hohoho
    

That's all, thx!

持续更新中。。。

评论 · 0

还没有评论。