ruby-on-rails - proyecto - ruby on rails ejemplos
No se puede convertir el fixnum en una cadena durante el rake db: create (1)
El analizador YAML tiene que adivinar qué tipo de datos es cada valor en su archivo database.yml
, sin ninguna otra información contextual.
Como tal, probablemente considera que el valor de tu password
de 123
es un número entero.
Tratando de forzar la interpretación de la cuerda:
password: "123"
Acaba de crear una nueva aplicación de blog usando Rails 3.0
mi modelo es simple
class Post < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
belongs_to :post
end
Utilicé los comandos: los rieles generan el título del post del andamio: cuerpo de la cadena: texto, etc.
para crear estos archivos.
Ahora quería generar el db usando:
rastrillo db: crear
Me salió el error
rake aborted!
can''t convert Fixnum into String
¿Alguna idea de cuál puede ser el problema?
Estoy siguiendo este tutorial: http://sixrevisions.com/web-development/how-to-create-a-blog-from-scratch-using-ruby-on-rails/
Aquí está el rastro:
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
** Execute db:create
rake aborted!
can''t convert Fixnum into String
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.4/lib/mysql2/client.rb:36:in `connect''
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.4/lib/mysql2/client.rb:36:in `initialize''
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.4/lib/active_record/connection_adapters/mysql2_adapter.rb:14:in `new''
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.4/lib/active_record/connection_adapters/mysql2_adapter.rb:14:in `mysql2_connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:230:in `send''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:230:in `new_connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:238:in `checkout_new_connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:194:in `checkout''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in `loop''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:190:in `checkout''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:189:in `checkout''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:96:in `connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_pool.rb:318:in `retrieve_connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:97:in `retrieve_connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/connection_adapters/abstract/connection_specification.rb:89:in `connection''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/railties/databases.rake:68:in `create_database''
/Library/Ruby/Gems/1.8/gems/activerecord-3.0.0/lib/active_record/railties/databases.rake:33
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `execute''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `each''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `execute''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_with_call_chain''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in `invoke''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `each''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in `run''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in `run''
/Library/Ruby/Gems/1.8/gems/rake-0.8.7/bin/rake:31
/usr/bin/rake:19:in `load''
/usr/bin/rake:19
database.yaml:
# MySQL. Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
# gem install mysql2
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: myblog_development
pool: 5
username: root
password: 123
socket: /tmp/mysql.sock
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: mysql2
encoding: utf8
reconnect: false
database: myblog_test
pool: 5
username: root
password: 123
socket: /tmp/mysql.sock
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: myblog_production
pool: 5
username: root
password: 123
socket: /tmp/mysql.sock
migraciones
class CreatePosts < ActiveRecord::Migration
def self.up
create_table :posts do |t|
t.string :title
t.text :body
t.timestamps
end
end
def self.down
drop_table :posts
end
end
siguiente migración:
class CreateComments < ActiveRecord::Migration
def self.up
create_table :comments do |t|
t.string :name
t.text :body
t.references :post
t.timestamps
end
end
def self.down
drop_table :comments
end
end