日期:2014-05-16  浏览次数:20679 次

rails new demo -d mysql会不会生成数据库?
测试1
rails new demo -d mysql
1.不配置database.yml的mysql密码,对rails server打开网站没影响
2.并且这步骤是不生成对应的demo_development数据库的
3.因为Localhost:3000访问的是Public文件夹里的Index.html,所以不需要访问数据

测试2
rails g controller login index
1. 不配置database.yml的mysql密码,对上面命令无影响
2.但是对访问产生了影响
如:
Mysql2::Error
Access denied for user 'root'@'localhost' (using password: NO)Rails.root: D:/work/site

修改密码mysql在database.yml的密码(是字符串类型)
3.如果不执行 rake db:create 那么会产生错误:
如:
Mysql2::Error
Unknown database 'site_development'
4.在mysql新建这个数据库
5.访问成功
6.手工建立数据库site_development 和rake执行有区别,rake会自动增加demo_test数据库


备忘录
1.对于使用rails new demo -d mysql,使用Mysql作为开发数据库的时候,要注意修改database.yml中的密码,密码必须为字符串,整数会报错
2.修改好yml之后,必须bundle一次,可能不需要,然后rake db:create 会执行创建数据库的开发版和测试版,也就是数据库生成:
demo_development
demo_test
2个数据库