Ruby 按着第一集视频做的,我怎么就 rake 不了呢。。。

superbatironmans5 · 2012年01月26日 · 最后由 metal 回复于 2012年02月04日 · 3522 次阅读

好心人帮帮忙。。。

  1. rake db:create 少了个 e 吧?
  2. 错误提示貌似是指 mysql 的版本不对

把 e 补上了,还是说版本不对。。。怎么改啊这个。。。

贴一下你的 Gemfile 和 database.yml

匿名 #4 2012年01月26日

重新编译 mysql gem, 如果不是必须工作在 windows 下,还是尽快学其他类 Unix 系统为好

我记得好像说 windows 下只能用 mysql 这个 Gem 不能用 mysql2

mysql 的 gem 的版本不对。换成 sqlite 试试。

Gemfile 如下

source 'http://rubygems.org'

gem 'rails', '3.1.3'

Bundle edge Rails instead:

gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'mysql2'

Gems used only for assets and not required

in production environments by default.

group :assets do gem 'sass-rails', '~> 3.1.5' gem 'coffee-rails', '~> 3.1.1' gem 'uglifier', '>= 1.0.3' end

gem 'jquery-rails'

To use ActiveModel has_secure_password

gem 'bcrypt-ruby', '~> 3.0.0'

Use unicorn as the web server

gem 'unicorn'

Deploy with Capistrano

gem 'capistrano'

To use debugger

gem 'ruby-debug19', :require => 'ruby-debug'

group :test do # Pretty printed test output gem 'turn', '0.8.2', :require => false end

*database.yml * 如下

SQLite version 3.x

gem install sqlite3

#

Ensure the SQLite 3 gem is defined in your Gemfile

gem 'sqlite3'

development: adapter: mysql2 database: blog pool: 5 username:root encoding:utf8 host:localhost

#7 楼 @superbatironmans5 不确定 windows 上面的情况...建议你试试 mysql gem 或者用特定版本的 mysql2... 搜索一下这个错误 应该会有人遇到了...

貌似这个是要把 mysql 的安装目录/bin 里面的那个 libmysql.dll 复制到 ruby 安装目录/lib 下

http://guides.ruby.tw/rails3/getting_started.html#3-4

libmysql 放在 system32 还是 system 下面,我忘记了,然后注册这个组件。然后在呼出运行(cmd)注册 regsvr32 libmysql.dll 可能会出现不兼容,或者警告信息,完全不用管,只要能通过 rake 来建表就行了。如果建立不了,就多找找这个 libmysql 文件。

微型项目用 windows 完全没有问题的(学习 ruby 和 rails 基础完全没有问题),大部分 gem 都是可以用,只是建议用 ubuntu 或者 mac,部署和 gem 不用折腾,其实最后你还是会走到 ubuntu 或者 mac 上来的,水平随之提高的话。

PS:libmysql.dll 必须是 mysql 5.0.x 提取出来的,这个文件可以通过搜索引擎可以找到,rails libmysql.dll 可以这搜索一下。gem 就用 mysql2 没问题的。我自己在公司的 windows 上折腾过。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号