Je me demande comment on peut utiliser Bundler avec Sinatra. L'idée est d'utiliser les gems que Bundler télécharge dans le dossier .gems.
Réponses
Trop de publicités?À l'intérieur de votre Sinatra application, vous avez juste à exiger le bundler de l'installation:
require "bundler/setup"
require "sinatra"
get "/" do
"Hello world!"
end
Alternativement, si vous ne voulez pas ajouter la require "bundler/setup"
en haut de votre application, vous pouvez invoquer l'sinatra via bundle exec
(par exemple, bundle exec ruby myapp.rb
)
Cela suppose que vous avez un Gemfile
à la racine de votre application. Il pourrait ressembler à ceci:
source "http://rubygems.org"
gem "sinatra"
Cela suppose également que vous avez déjà installé bundler (gem install bundler
) et que vous avez exécuté bundle install
pour installer toutes les dépendances sur des gems.
Il existe un guide simple sur le site Web de lieur.
+1 pour le guide sur le site Web de lieur , mais si vous avez une application simple et que vous utilisez le dsl de Sinatra au plus haut niveau, vous devez procéder comme suit:
dans votre Gemfile (dites au bundler de ne pas avoir besoin de sinatra):
gem 'sinatra', :require => false
et dans le fichier de l'application (nécessite explicitement sinatra):
require 'rubygems'
require 'bundler'
Bundler.require
require 'sinatra'
get '/' do
'hello world'
end