Solidus includes many preferences with default settings that are appropriate for
typical stores. For a list of Solidus' preferences and their default values,
class is where all of Solidus' preferences are defined.
The built-in preferences are well-tested options that allow you to implement complex ecommerce behaviors.
A limited set of these preferences can be configured by store administrators
solidus_backend admin area.
Since Solidus is a
, much of its behavior can be
customized through initializers. You can modify or initialize preferences using
initializers. Some default preferences are explicitly set in the initializer at
In this file's first
Spree.config block, the
preferences are given default values you may want to modify:
Spree.config do |config|
config.currency = "USD"
config.mails_from = "[email protected]"
This block instantiates the main configuration object for
Here, you can start to change Solidus' behavior to accommodate many common use
Once your application has been initialized, you can set any preferences using
Spree::Config, which is an instance of
Spree::AppConfiguration. For example,
if you wanted to change your store's currency:
Spree::Config.currency = "AUD"
We do not support changing or extending the
preferences. However, you may be able to get the functionality you require by
adding preferences that are specific to a model. For more information see the
Add model preferences
If you're developing a Solidus plugin you may consider adding your configuration
by inheriting from the class
Spree::Preferences::Configuration just like
Another way to add configuration is by customizing
Rails.configuration, see the
for details and examples.
You can read all of Solidus' currently set preferences quickly from your Rails console:
Or, if you want the value of a specific preference:
Solidus is an open source platform supported by the community. We encourage everyone using Solidus to contribute back to the documentation and the code.