У меня проблема с Bundler и Sinatra. Во-первых я использовал это в моем app.rb:Почему Bundler.require загружает неправильный путь?
require 'rubygems'
require 'bundler/setup'
require 'sinatra'
require 'haml'
require 'redis'
...
Однако я прочитал о Bundler.require
и думал, что это хороший способ DRY, так как драгоценные камни, указанные в Gemfile являются те, которые я потребует в мое приложение в любом случае. Почему я должен указывать требования снова в app.rb
? Поэтому я сменил свой код на:
require 'rubygems'
require 'bundler'
Bundler.require(:default)
Намного приятнее? До тех пор, пока не возникнет проблема:
Errno::ENOENT at/
No such file or directory - /home/lamnk/.rvm/gems/ruby-1.9.2-head/gems/bundler-1.0.7/lib/bundler/views/index.haml
file: tilt.rb location: read line: 119
Очевидно, что путник переместил корневой путь приложения на свое место. Но почему?
вы можете изменить путь просмотра, используя «set: views, File.dirname (__ FILE__) + '/ view» – Sinetris 2010-11-23 14:30:14