La ligne est celui-ci :
Ça signifie que le bijou doit être installé ou n’est pas nécessaire ?
La ligne est celui-ci :
Ça signifie que le bijou doit être installé ou n’est pas nécessaire ?
Autrement dit, installer la gem, mais ne pas appel besoin lorsque vous démarrez Bundler. Ainsi, vous devrez appeler manuellement
Si vous souhaitez utiliser la bibliothèque.
Si vous aviez à faire
puis bundler téléchargerait le joyau nommé chaque fois que, mais qu’il appellerait
Ceci est souvent utilisé si le nom de bibliothèque d’exiger est différent du nom de la gemme.
Vous utilisez :require => false
lorsque vous souhaitez que le gem à être installé, mais pas "nécessaire".
Ainsi, dans l'exemple que vous avez donné:
gem 'whenever', :require => false
quand quelqu'un s'exécute bundle install chaque fois que le gem serait installé avec gem install whenever
. Chaque fois qu'est utilisé pour créer des tâches cron par l'exécution d'une tâche rake, mais n'est généralement pas utilisé dans les rails (ou autre cadre si ce n'rails) de l'application.
Ainsi, vous pouvez utiliser :require => false
de tout ce que vous devez exécuter à partir de la ligne de commande, mais n'avez pas besoin dans votre code.
require: false
dit Bundle.require
de ne pas exiger que des gem: le bijou doit être expressément requises par require 'gem'
.
Cette option n'a pas d' incidence sur:
bundle install
: le gem aurez installé indépendamment.
les chemins de recherche de configuration par bundler: le gem seront toujours ajoutées à la recherche de chemin, sinon vous ne seriez pas en mesure de le faire require 'gem'
. Bundler ajoute le Rubis le chemin de recherche soit:
Bundle.setup
,require bundler/setup
,bundle exec
.Exemple:
cat <<EOF > Gemfile
source 'https://rubygems.org'
gem 'haml'
gem 'faker', require: false
EOF
bundle install --path=.bundle
cat <<EOF > bundle_exec_me.rb
begin Haml; rescue NameError; else raise; end
begin Faker; rescue NameError; else raise; end
# The Bundler object will be there because we will do `bundle exec`.
Bundler.require
Haml
# Not required because of the require: false on the Gemfile:
begin Faker; rescue NameError; else raise; end
# Faker is in the path because Bundle.setup was done automatically
# when we use `bundle exec`.
require 'faker'
Faker
EOF
bundle exec ruby bundle_exec_me.rb
Les Rails 4 modèle par défaut sur config/boot.rb
:
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE'])
Et sur config/application.rb
Bundler.require(:default, Rails.env)
qui sont appelés les uns après les autres, comme expliqué dans l' initialisation du tutoriel.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.