我正在处理示例数据。目前,我的数据库中没有任何数据。
{
"Name": "john",
"ProductIds: [1, 2, 3],
"Products": [
{
"description": [
{
"a": "abc"
},
{
"b": "def"
}
]
}
]
}
例如,当我们执行Customer.all
时,我们得到的结果如下:
[#<Customer:0x00007fd75542f250
id: "123",
customer_name: "sam",
city: "Houston",
state: "Texas"]
我在模型中有此数据,我正在尝试编写一种方法来将该示例数据作为对象返回。
感谢您的帮助。
答案 0 :(得分:0)
我将创建一个模拟类以便返回您的示例数据。像这样:
class CustomerRepositroyMock
DATA = [
{ .... json data here }
]
def self.all
DATA.map{ |payload| Product.new(.... init attributes here) }
end
end
以上内容将返回一组新的Product实例。希望有帮助。
答案 1 :(得分:0)
使用结构。
class Customer
def self.all(collection)
customer = Struct.new(:name, :address)
collection.map {|e| customer.new(e[:name], e[:address])}
end
end
collection = [
{name: "pepe", address: "abc"},
{name: "ciro"}
]
Customer.all(collection) #=> [
#<struct name="pepe", address="abc">,
#<struct name="ciro", address=nil>
]