Формат данных YAML для коллекций mongodb и ссылочных объектов - PullRequest
1 голос
/ 11 июля 2011

Я хочу загрузить тестовые данные в мое приложение scala play из файла data.yml в формате YAML .

Мои объекты выглядят так:

@Entity("users")
User(@Required val uname: String, val isAdmin: Boolean = false)  {
  @Id var id: ObjectId = _

  @Reference val accounts = new ArrayList[Account]

}


@Entity("account")
class Account {

   @Id var id: ObjectId = _

  @Embedded val addresses = new ArrayList[Address] 
  @Reference val departments = new ArrayList[Department]  

  var description : String = _

}


class Address {
  street: String = _
  city: String = _

}

@Entity("department")
class Department {

 @Id var id: ObjectId = _

  principal: String = _ 

}

Вот как выглядит почти пустой data.yml:

User(foo):
    uname: Foo
    accounts:

Я хочу загрузить одного пользователя с двумя учетными записями.Одна учетная запись имеет только один адрес и один отдел, другая учетная запись имеет 2 адреса и один отдел, чтобы максимально упростить задачу.Итак, что же для этого нужно сделать с помощью полных данных yml?

1 Ответ

1 голос
/ 18 июля 2011

Почему вы не можете просто использовать списки с ключами?Используя нотацию «- ключ» или «[ключ1, ключ2]»?Пример:

Department(dep1):
   ..

Address(address1):
   ..

Address(address2):
   ..    

Account(account1):
   ..
   addresses:
       - address1
   departments:
       - dep1

Account(account2):
   ..
   addresses:
       - address1
       - address2
   departments:
       - dep1  

User(user1):
  ..
  accounts:
     - account1
     - account2

Чек http://en.wikipedia.org/wiki/Yaml#Lists

...