Я учил себя GraphQL с помощью Prisma - очень новичок в обоих.
Я только что получил тест по программированию, в котором задача состоит в том, чтобы подключить интерфейс React Native к серверной части WordPress. Я подумал, что это может быть забавной возможностью применить Prisma и GraphQL на практике. Моя мысль заключалась в том, чтобы подключить Prisma к базе данных WP MySQL, а затем использовать Prisma-GraphQL для подключения к React Native.
Однако кажется, что подключить Prisma к MySQL не так просто — по крайней мере, для меня, новичка. Я приветствовал бы любую информацию о том, как это можно сделать - не подробный код, конечно, а скорее, разумно ли делать то, о чем я думаю, и какие пакеты/маршруты были бы лучшим путем вперед. Спасибо!






Простой ответ: все, что вам нужно для подключения Prisma к любой базе данных MySQL, — это Хозяин и порт (3306, потому что это MYSQL) того места, где работает БД.
И это приводит нас к тому, где у вас работает сервер Prisma?
если вы просто разработчик внешнего интерфейса и не знаете или не хотите иметь дело с такими вещами, как Docker, тогда вам лучше использовать что-то вроде Призма Облако, который предоставит вам сервер Prisma, а также может разместить для вас базу данных MySQL. или вы можете разместить его самостоятельно и выбрать опцию «есть существующая база данных» и указать имя хоста (URL), где оно у вас есть, во время создания вашего сервера Prisma.
с другой стороны, если вам удобно запускать его локально или в облачном провайдере с Docker (Локальная установка Prisma), вы просто указываете хост и порт, как вы можете видеть в ссылке на документы выше в вашем файле конфигурации docker-compose для Prism.
update: Regard connecting to an existing DB, If you tried to do a
prisma deployon a DB with a different schema it probably gonna blow and complain about the schema conflict, that's why you need introspection for before but as you mentioned in the comment it's only for PostgreSQL at the moment, they are working on creating a tool for MySQL but it's no one knows when it could be out you can check for updates on the open issue with this feature here
надеюсь, что это поможет немного упростить ситуацию.
@Cerulean Я обновляю ответ ответом на это.
Для учебного проекта вы можете выбрать любое решение. Вы получите удовольствие и боль от использования MySQL, совместно используемого Prisma/ReactNative и WordPress.
Для реального проекта вам следует избегать совместного использования одной базы данных между различными приложениями. В вашем случае правильное архитектурное решение использует WPGraphQL вместо Prisma. Он предоставит вам GraphQL из плагина WordPress.
И это работает с существующей базой данных, в которой уже есть данные? Что тогда происходит с
prisma deploy? Очевидно, я немного запутался - в примерах, которые я рассматривал, Prisma имеет контроль над БД. Не могли бы вы указать мне раздел, где говорится о подключении к существующей БД с данными? Я не мог найти его. Кроме того, я предполагаю, что тогда нужно написать все схемы для БД, поскольку функция самоанализа, которую они имеют, работает только с PostgreSQL?