2015-06-17 7 views
2

Я хотел бы создать вложенный массив с объектами в формате MSON для использования с API Blueprint и Apiary. Я код выглядит правильно, но когда я делаю его в Пасивере, я не получаю ожидаемого JSON.Вложенный массив с объектом в MSON пуст в документации Apiary.io

Пример: Я хочу создать: Навигация имеет несколько категорий. Каждая категория может иметь несколько подкатегорий. Каждая категория и подкатегория имеют имя.

MSON Я создал для этого:

FORMAT: 1A 

# Test nested arrays-in-object-arrays 

A navigation has multiple categories. Each category can have multiple subcategories. 

# GET /navigation 

+ Response 200 (application/json) 

    + Attributes 

     + categories (array) 
      + (object) 
       + name: Category One (string) - Name of the category 
       + subcategories (array) 
        + (object) 
         + name: Sub category One (string) - Name of the subcategory 

Выход я ожидал бы в формате JSON:

{ 
    "categories": [ 
    { 
     "name": "Category One", 
     "subcategories": 
     [ 
     { 
      "name": "Sub category One" 
     } 
     ] 
    } 
    ] 
} 

Выход я в Пасека

{ 
    "categories": [ 
    { 
     "name": "Category One", 
     "subcategories": [] 
    } 
    ] 
} 
+2

Я проверил ваш пример, и это выглядит как ошибка в парсер , поэтому я отправил [github issue] (https://github.com/apiaryio/drafter/issues/47) от вашего имени парсеру, если вы не возражаете. –

+1

Исправлена ​​ошибка, поэтому она должна работать должным образом. –

ответ

5

У меня были трудности с чем-то подобным. Я в конечном итоге объявить вложенный тип в качестве структуры данных и ссылаться на него следующим образом:

FORMAT: 1A 

# Test nested arrays-in-object-arrays 

A navigation has multiple categories. Each category can have multiple subcategories. 

# GET /navigation 

+ Response 200 (application/json) 

    + Attributes 

     + categories (array) 
      + (object) 
       + name: Category One (string) - Name of the category 
       + subcategories (array[subcategory]) 

# Data Structures 

## subcategory (object) 
+ name: Sub category One (string) - Name of the subcategory 

Который производит:

{ 
    "categories": [ 
    { 
     "name": "Category One", 
     "subcategories": [ 
     { 
      "name": "Sub category One" 
     } 
     ] 
    } 
    ] 
} 
+0

Я также нашел это обходное решение. Спасибо за совместное использование, но поскольку это все еще обходной путь, я предпочел бы, чтобы (синтаксический анализатор API Bluefix) исправлялся как правильный «ответ». – JeroenVdb

+1

Эй, @ JeroenVdb, У нас есть это на радаре. Сначала мы пытаемся исправить некоторые внутренние вещи. –

1
+ Response 200 (application/json) 

    + Attributes(CATEGORIES) 


# Data Structures 

## SUBCATEGORY (object) 
- name: `Sub category One` (string) - Name of the subcategory 

## CATEGORIES (object) 
- categories (array) 
    - (object) 
     - name: `Category One` (string) - Name of the category 
     - subcategories (array[SUBCATEGORY]) 

 Смежные вопросы

  • Нет связанных вопросов^_^