Ruby on Rails 学习手记
- 变量名和文件名应该全部采用小写字母,单词之前用下功线分隔
- 类名和模块名每个单词首字体大写,没有下划线
- 模型文件名以单数形式表示,表名会被自动以复数形式的表示
- Logger日志框架支持四个级别,分别是:warn、info、error、fatal,这些信息会被写入log目录下
- debug()这个方法可以将对象格式化为合法的html在页面上显示
命令
- Migration的建立和执行
# 建立
rails g migration [migration_name]
# 执行
rake db:migrate
- 与Migration相关的Rake命令
- rake db:create 按照目前的 RAILS_ENV 环境建立数据库
- rake db:create:all 建立所有环境的数据库
- rake db:drop 按照目前的 RAILS_ENV 环境删除数据库
- rake db:drop:all 删除所有环境的数据库
- rake db:migrate 执行Migration操作
- rake db:rollback STEP=n 回滚上N个Migration操作
- rake db:migrate:up VERSION=20080906120000 执行指定版本的Migration
- rake db:migrate:down VERSION=20080906120000 回滚指定版本的Migration
- rake db:version 当前数据库的Migration版本
- rake db:seed 执行 db/seeds.rb 载入种子数据
配置
- 安装Gem时不安装doc
# 修改~/.gemrc,加入
gem: --no-ri --no-rdoc
问题
- Error installing mysql2: ERROR: Failed to build gem native extension.
没有安装必要的mysql库导致:
apt-get install libmysql-ruby libmysqlclient-dev
- Unknown database ‘simple_cms_development’
rake db:create
- 使用mongoid的项目在生成migration的时候显示“error mongoid [not found]”
修改config/application.rb,加入
config.generators do |g|
g.orm :active_record
end