class Flavordb::ProductCategory
Attributes
parent_category_id[R]
Public Class Methods
new(data)
click to toggle source
Calls superclass method
Flavordb::Base::new
# File lib/flavordb/product_category.rb, line 14 def initialize data super @is_root = data['rootCategory'] || false @parent_category_id = data['parentCategoryId'] @products_resource = data['productsResource'] @subcategories_resource = data['subcategoriesResource'] end
object_cache()
click to toggle source
# File lib/flavordb/product_category.rb, line 8 def object_cache @object_cache = {} if @object_cache.nil? @object_cache end
Public Instance Methods
parent_category(opts = {})
click to toggle source
# File lib/flavordb/product_category.rb, line 26 def parent_category(opts = {}) client = opts[:client] || Flavordb::Client.default_client client.get_product_category(parent_category_id) end
products(opts = {})
click to toggle source
# File lib/flavordb/product_category.rb, line 31 def products(opts = {}) client = opts[:client] || Flavordb::Client.default_client product_data = client.get_object_data_by_path "#{self.resource}/products" product_data['data'].map {|p| Flavordb::Product.get_or_create p} end
root?()
click to toggle source
# File lib/flavordb/product_category.rb, line 22 def root? @is_root end
subcategories(opts = {})
click to toggle source
# File lib/flavordb/product_category.rb, line 37 def subcategories(opts = {}) client = opts[:client] || Flavordb::Client.default_client subcategory_data = client.get_object_data_by_path "#{self.resource}/subcategories" subcategory_data['data'].map {|sc| Flavordb::ProductCategory.get_or_create sc} end