class Taobao::Category
Attributes
id[R]
Public Class Methods
new(category_id)
click to toggle source
@param category_id [Integer]
# File lib/taobao/category.rb, line 6 def initialize(category_id) @id = category_id.to_i end
Public Instance Methods
name()
click to toggle source
@return [String]
# File lib/taobao/category.rb, line 11 def name @name ||= category_request(cids: @id)[:name] end
products()
click to toggle source
@return [Taobao::ProductList]
# File lib/taobao/category.rb, line 31 def products @products ||= Taobao::ProductList.new(cid: @id) end
properties()
click to toggle source
@return [Taobao::PropertyList]
# File lib/taobao/category.rb, line 26 def properties @properties ||= Taobao::PropertyList.new(cid: @id) end
subcategories()
click to toggle source
@return [Array<Taobao::Category>]
# File lib/taobao/category.rb, line 16 def subcategories return @subcategories if @subcategories @subcategories = category_request(parent_cid: @id).map do |cat| category = self.class.new cat[:cid] category.to_object(cat) category end end
Private Instance Methods
category_request(optional_params = {})
click to toggle source
# File lib/taobao/category.rb, line 36 def category_request(optional_params = {}) fields = [:cid, :parent_cid, :name, :is_parent].join ',' params = {method: 'taobao.itemcats.get', fields: fields} result = Taobao.api_request(params.merge(optional_params)) begin result[:itemcats_get_response][:item_cats][:item_cat] rescue NoMethodError [] end end