Ruby on rails 安装步骤

sudo chown -R $(whoami):admin /usr/local  修改 目录权限


出现这个错误,先更新brew版本

Ruby

Ruby版本管理:rvm/rbeny RVM

历史

Ruby on Rails 简称Rails,是一个开源的敏捷的web开发框架,并致力于给开发人员带来更大的乐趣和更高的开发效率。

配置环境

安装gpg
$ brew install gpg
安装RVM 
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
$ \curl -sSL https://get.rvm.io | bash -s stable
安装完rvm 要重新开终端,否则会报 /config/db: no such file or directory

修改源 https://ruby.taobao.org/
$ sed -i .bak -E 's!https?://cache.ruby-lang.org/pub/ruby!https://ruby.taobao.org/mirrors/ruby!' $rvm_path/config/db
$rvm install 2.2(版本号)

终端推荐: iTerm
shell推荐: [zsh](https://github.com/robbyrussell/oh-my-zsh)

编辑器推荐:sublime text/vim/rubymine/atom

代码风格:
* 不要用tab,要用空格缩进
* 一般缩进两个空格

安装需要的工具(库)
$ brew install sqlite
$ brew install redis        (一个存储系统,数据库 与memcached比较)(缓存、nosql计算统计)
$ brew install imagemagick      (图形处理)

通过taobao源替换gem默认源
后执行
$ gem install bundler

安装rails
$ gem install rails

命令行
* ctrl+a 起始位置
* ctrl+e 末尾
* grep 搜索
* ps aux | nginx 看进程
* 管道命令

sublime配置 国内taobao源

开始
1)
$ rails new demo 新建项目(可以加-t)
$ rails help new 帮助文档
2)
更改Gemfile文件(添加插件和第三方依赖)(修改文件见群里老王)
后执行
$ bundle install
3)
进入目录
$ rails server 启动项目  (rails server -p 3001 给该项目指定一个端口号,不跟其他项目冲突)
$ rails g
4)
(下面是配置已安装的第三方依赖) 
$ rails g annotate:install      model注释
$ rails g config:install
$ rails g rspec:install         rspec测试
$ rails g simple_form:install
$ rails g rails_kindeditor:install
5)
配置更改spec/rails_helper.rb  (修改文件见群里老王)
6)
在config/application.rb中class添加时区信息  (修改文件见群里老王)
7)
thin服务启动工具命令:
$ thin start前台启动
$ thin start -d 后台启动
$ thin restart 重启
代码

Active Record 测试文档

类在Ruby中就像常量,常量所有的功能,它都有。


$ rails g model project title:string photo:string description:string content:text
$ rake db:migrate     数据迁移 
如果想在其他环境中运行迁移,必须在命令中指明: rake db:migrate RAILS_ENV=production
spec/factories/projects.rb 写测试
$ rspec      执行测试

写测试
spec
  factories    基础定义
  models        针对factories的测试

rails g controller [name] index show  只创建包含index和show的view的controller
rails g rspec:feature show_project_list 创建controller的测试

单元测试 'shoulda-matchers', '~> 3.0'(https://github.com/thoughtbot/shoulda-matchers)
模拟测试 capybar
自动生成模拟数据 Faker (https://github.com/stympy/faker)

TEST_DRIVER=webkit rspec  浏览器测试

路由

resources生成7个action和路径

@符号可以在view中直接使用

params参数

模板 <%=输出/<%不输出


生成后台 $ rails g scaffold_controller admin/projects   会自动建好所有方法的view
删除   rails destroy  scaffold_controller admin/projects  

测试后台 $ TEST_DRIVER=webkit rspec spec/features/admin_projects_spec.rb
Rake

Rake教程讲解

Rake是一门构建语言,和make、ant类似。它是用ruby编写,支持自己的DSL处理和维护Ruby应用程序。Rails用rake的扩展完成不同的任务。Make用来编译程序。
比如:可以辅助完成单元测试和数据迁移。
可以用rake -T获取rake的完整任务列表。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值