padrino g: невозможно загрузить такой файл - продолжение / плагины / схема

Новичок в Ruby, решил начать с фреймворка Padrino

следил за http://padrinorb.com/guides/getting-started/blog-tutorial/

Я создал свой проект, используя padrino g project blog-tutorial -e erb -c scss -s jquery -d sequel -a mysql2 -bтогда я попытался сделать модель padrino g model post title:string body:text created_at:datetime

но вместо этого я получаю ошибку:

/home/user/.rvm/gems/ruby-2.4.1/gems/sequel-5.1.0/lib/sequel/model/base.rb:914:in `require': cannot load such file -- sequel/plugins/schema (LoadError)
        from /home/user/.rvm/gems/ruby-2.4.1/gems/sequel-5.1.0/lib/sequel/model/base.rb:914:in `plugin_module'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/sequel-5.1.0/lib/sequel/model/base.rb:533:in `plugin'
        from /home/user/Sites/blog-tutorial/config/database.rb:1:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/reloader.rb:91:in `require'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/reloader.rb:91:in `safe_load'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/loader.rb:154:in `block in require_dependencies'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/loader.rb:152:in `each'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/loader.rb:152:in `require_dependencies'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-core-0.14.1.1/lib/padrino-core/loader.rb:57:in `load!'
        from /home/user/Sites/blog-tutorial/config/boot.rb:60:in `<top (required)>'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-gen-0.14.1.1/lib/padrino-gen/generators/cli.rb:26:in `require'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-gen-0.14.1.1/lib/padrino-gen/generators/cli.rb:26:in `load_boot'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/command.rb:27:in `run'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/invocation.rb:133:in `block in invoke_all'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/invocation.rb:133:in `each'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/invocation.rb:133:in `map'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/invocation.rb:133:in `invoke_all'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/group.rb:232:in `dispatch'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/thor-0.20.0/lib/thor/base.rb:466:in `start'
        from /home/user/.rvm/gems/ruby-2.4.1/gems/padrino-gen-0.14.1.1/bin/padrino-gen:16:in `<main>'

не могу найти решение для этого (mysql-devel установлено, mysql2 жемчужина тоже)

config/database.rb имеет действительные учетные данные для соединения с БД, например mysql2://root:1@localhost/my_db, Также пытался передать имя пользователя / пароль в параметрах

2 ответа

Драгоценный камень Sequel не может найти плагин схемы, но проект учебника блога, кажется, не нуждается в этом. Откройте файл blog-tutorial/config/database.rb и закомментируйте первую строку:

#Sequel::Model.plugin(:schema)
Sequel::Model.raise_on_save_failure = false # Do not throw exceptions on failure
Sequel::Model.db = case Padrino.env
  when :development then Sequel.connect("sqlite://db/blog_tutorial_development.db", :loggers => [logger])
  when :production  then Sequel.connect("sqlite://db/blog_tutorial_production.db",  :loggers => [logger])
  when :test        then Sequel.connect("sqlite://db/blog_tutorial_test.db",        :loggers => [logger])
end

Я проверил весь проект, как это, за исключением части RSS-канала в конце, и все работало на меня.

Плагин схемы был объявлен устаревшим в Sequel 4.45.0 и удален в Sequel 5.0.0. Переключитесь на миграцию или вызов методов изменения схемы Sequel::Database непосредственно перед созданием классов модели.

Другие вопросы по тегам