Closed Kraysent closed 4 months ago
Пока что я вижу себе создание таблицы на нулевом уровене в следующем виде:
POST /api/v1/table
{
"table_name": "example_table",
"description": "example description",
"bibliography_id": 1234,
"columns": [
{
"name": "name",
"description": "name of the object",
"type": "str"
},
{
"name": "ra",
"unit": "deg",
"type": "double", # формально это почти однозначно определяется из unit, но пока что не хочется этим заниматься
"description": "right ascension"
},
{
"name": "dec",
"unit": "deg",
"type": "double",
"description": "declination"
}
]
}
bibliography_id - id, который отдаёт метод создания библиографии (#88).
{
"data": {
"table_id": "example_table"
}
}
Тогда в table_id
первое время будет просто лежать имя таблицы, потом посмотрим, может можно что-то более подходящее положить.
API сделал, осталось только при создании библиографии ходить в ADS по bibcode в рамках HyperLEDA/db-app#87 Эту задачу закрываю
Для записи на нулевой уровень нужен нормальный способ записи через сетевой интерфейс, чтобы потом можно было легко создавать таблицы скриптами.
Пока что два метода: на создание таблицы со столбцами и метаданными и второй на заполнение таблицы данными по id таблицы.
В рамках этого же тикета хочется сделать клиента для этих двух методов, чтобы была возможность более просто и без дубликации сделать задачи HyperLEDA/scripts#2 и HyperLEDA/scripts#1