2
我有這樣的方法如何確定的ActiveRecord類型::關係
def get_list(limit = nil, page = nil)
coll = all
coll = (block_given?) ? (yield coll) : coll
rowcnt = coll.count
pages = (limit && limit > 0) ? (rowcnt.to_f/limit).ceil : 1
coll = coll.limit(limit) if limit && limit > 0
coll = coll.offset((page-1)*limit) if limit && limit > 0 && page && page > 1
ret = { rows: coll.all.to_a, rowcnt: rowcnt, page: page || 1, pages: pages, limit: limit || 0 }
def ret.serialize(include = nil)
self[:rows].collect! do |row|
hash = include ? (row.serializable_hash(include: include.incllist)) : row.serializable_hash
(hash['code'] && hash['code'].end_with?('(TR)')) ? nil : ((block_given?) ? yield(hash,row) : hash)
end
self[:rows].compact!
return self.rest_success,true,self
end
return ret
end
,我正與
Unit.get_list() do |q|
# some logic
end
如何確定的coll
在get_list()
類型打電話?
我coll.instance_of?(Unit)
和coll.is_a?(Unit)
嘗試以及與self.instance_of?(Unit)
和self.is_a?(Unit)
但他們都返回false
。
你嘗試'coll.klass == Unit'? –
@ Md.FhanhanMemon好的,這工作,謝謝。也許你想發佈這個答案。 – RagnarLothbrok