1

我想创建一个接受 json 数组并创建多个对象的操作。类似的东西Books::CreateCollection。我相信我需要以某种方式重用Books::Create- 只需多次调用它并将整个循环包装在事务中。

json:

{
 "books": [
    {
       title: "A Tale Of Two Cities"
    },
    {
       title: "Don Quixote"
    }
 ]
}

但是合同Books::CreateCollection应该是什么样子的呢?

开拓者0.3.0

4

1 回答 1

2

你的合同可以处理这个。

contract do
  model Book # since you don't call this on the operation.

  collection :songs, populate_if_empty: Book do
    property :title
  end
end

这是基本的改革魔法。

合约现在将为数组Book中的每个传入哈希片段创建一个实例。songs

于 2015-06-08T08:50:10.830 回答