class SolidusRecommendations::Client
Public Class Methods
add_recommendable(name)
click to toggle source
Defines a method to access class instance.
@example Create a namespace for products
add_recommendable :products #=> SolidusRecommendations::Client::Products.new
# File lib/solidus_recommendations/client.rb, line 10 def self.add_recommendable(name) converted = name.to_s.split('_').map(&:capitalize).join klass = SolidusRecommendations::Recommendable.const_get(converted) create_instance(klass) end
create_instance(klass)
click to toggle source
Dynamically creates an attr_reader for each client space and sets it to the initalized values
# File lib/solidus_recommendations/client.rb, line 20 def self.create_instance(klass) reader = klass.to_s.split('::').last.downcase define_method(reader.to_sym) { klass.new } end
Public Instance Methods
products()
click to toggle source
Methods for product recommendations.
@return [SolidusRecommendations::Recommendable::Products]
# File lib/solidus_recommendations/client.rb, line 30 add_recommendable :products