Не могу понять в чем ошибка, тот же самый на Linux-машине прекрасно
работает.
Ситуация следующая: Пытаюсь через data_mapper сделать
DataMapper.auto_upgrade!, в результате получаю следующее:
c:\Ruby\odp>ruby models.rb
DataObjects::URI.new with arguments is deprecated, use a Hash of URI
components
(C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/lib/dm-do-
adapter/adapt
er.rb:231:in `new')
C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/lib/dm-do-
adapter/adapte
r.rb:291:in `next!': negative string size (or size too big)
(ArgumentError)
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/
lib/dm-do-a
dapter/adapter.rb:291:in `select_fields'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/
lib/dm-do-a
dapter/adapter.rb:39:in `block in select'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/
lib/dm-do-a
dapter/adapter.rb:276:in `with_connection'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/
lib/dm-do-a
dapter/adapter.rb:33:in `select'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-mysql-adapter.rb:99:in `show_variable'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-mysql-adapter.rb:89:in `character_set'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-mysql-adapter.rb:54:in `create_table_statement'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-do-adapter.rb:94:in `block in create_model_storage'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/
lib/dm-do-a
dapter/adapter.rb:276:in `with_connection'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-do-adapter.rb:93:in `create_model_storage'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/adapters/dm-do-adapter.rb:57:in `upgrade_model_storage'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/auto_migration.rb:71:in `upgrade_model_storage'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/dm-migrations-1.1.0/
lib/dm-migr
ations/auto_migration.rb:143:in `auto_upgrade!'
from models.rb:86:in `<main>'
Теперь об среде: Win7 x32,
ruby 1.9.2p290 (2011-07-09) [i386-mingw32]
*** LOCAL GEMS ***
addressable (2.2.6)
bcrypt-ruby (2.1.4 x86-mingw32)
data_mapper (1.1.0)
data_objects (0.10.6)
dm-aggregates (1.1.0)
dm-constraints (1.1.0)
dm-core (1.1.0)
dm-do-adapter (1.1.0)
dm-migrations (1.1.0)
dm-mysql-adapter (1.1.0)
dm-serializer (1.1.0)
dm-timestamps (1.1.0)
dm-transactions (1.1.0)
dm-types (1.1.0)
dm-validations (1.1.0)
do_mysql (0.10.6 x86-mingw32)
fastercsv (1.5.4)
json (1.4.6)
minitest (1.6.0)
rake (0.8.7)
rdoc (2.5.8)
ruby-ole (1.2.11.1)
spreadsheet (0.6.5.7)
stringex (1.2.2)
uuidtools (2.1.2)
zip (2.0.2)
models.rb
require 'rubygems'
require 'data_mapper'
require 'dm-migrations'
require "logger"
require "erb"
require "fileutils"
require "spreadsheet"
DataMapper.setup(:default, "mysql://localhost/odp")
DataMapper::Property::String.length(255)
class Game
include DataMapper::Resource
property :id, Serial
property :title, String
property :description, Text
property :external, String # External game id
property :file, String # Another id
property :price, String # Price
property :generate, Boolean, :default => false
has n, :games_genres
has n, :genres, :through => :games_genres
has n, :games_phones
has n, :phones, :through => :games_phones
end
class Genre
include DataMapper::Resource
property :id, Serial
property :title, String
property :code, String
property :icon, String
has n, :games_genres
has n, :games, :through => :games_genres
end
class Phone
include DataMapper::Resource
property :id, Serial
property :name, String
property :wurfl_id, String
property :user_agent, String
has n, :games_phones
has n, :games, :through => :games_phones
belongs_to :vendor
end
class Vendor
include DataMapper::Resource
property :id, Serial
property :name, String
has n, :phones
end
class GamesGenre
include DataMapper::Resource
property :id, Serial
belongs_to :game
belongs_to :genre
end
class GamesPhone
include DataMapper::Resource
property :id, Serial
belongs_to :game
belongs_to :phone
end
DataMapper.auto_upgrade!
--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru
Комментариев нет:
Отправить комментарий