Я создаю приложение React с базой данных PostgreSQL, созданной по модели Sequelize. В этой базе данных я хочу хранить массив массивов, содержащих по два числа в каждом, но я не могу понять, как это сделать.
Приложение, которое я создаю, - игра типа змей и лестниц, которая генерирует новую доску для каждой игры. Змеи и лестницы (в моем случае «ямы» и «порталы») отображаются из массива, о котором я вам говорил, пары чисел представляют номера входа и выхода.
Я попытался передать тип данных массива в качестве аргумента самому себе, но, похоже, это не сработало. Есть ли другой способ сделать эту работу?
Набор данных, который я хотел бы сохранить в этом столбце, выглядел бы примерно так:
[
[15, 4],
[34, 21],
[42, 19],
[56, 48],
[72, 30],
[82, 63],
[97, 71]
]
Вот как я пытался добиться этого в моей модели Sequelize:
pits: {
type: Sequelize.ARRAY(Sequelize.ARRAY(Sequelize.INTEGER))
}
Очевидно, что все пошло не так, как я планировал, иначе я бы не стал вас этим беспокоить. Я надеюсь, что кто-то может объяснить, почему это не работает, и помочь мне либо исправить мою базу данных для поддержки данных такого типа, либо (быстро) обойти это другим способом. Я знаю, что это, вероятно, ужасный и худший способ хранения данных, и могу придумать несколько способов решения проблемы, но все они включают переписывание большой части моего кода и требуют больше времени, чем у меня на данный момент.
Обратите внимание, что я кодирую только менее двух месяцев и использую Sequelize / Postgres около 2 недель, поэтому будьте осторожны. Ура!