`require ': нет такого файла для загрузки - lib / book (LoadError) на Heroku, Sinatra - PullRequest
0 голосов
/ 24 декабря 2011

Я создал простое приложение, и это моя структура папок

  • Библиотека / book.rb
  • Библиотека / user.rb
  • server.rb <- основной файл синатры </li>

А это мой config.ru


require './server'
run Sinatra::Application

При развертывании на heroku я получил эту ошибку `require ': такой файл не загружается - lib / book (LoadError). Однако на моей локальной машине все работает нормально.

Я не уверен, что включить в config.ru. Я пытался также потребовать './lib/book', но это не сработало.

Большое спасибо.

1 Ответ

1 голос
/ 09 марта 2012

Вы можете попытаться добавить каталог / lib к вашему $LOAD_PATH, добавив что-то вроде этого к вашему server.rb:

configure do
  $LOAD_PATH.unshift("#{File.dirname(__FILE__)}/lib")
  Dir.glob("#{File.dirname(__FILE__)}/lib/*.rb") { |lib| 
    require File.basename(lib, '.*') 
  }
end

Это добавит каталог / lib к вашему $LOAD_PATH и потребует все файлы * .rb в нем.

...