Если вы хотите иметь ссылку на другую таблицу с внешним ключом, вы должны хранить, например, идентификатор пользователя с данными, с которыми вы хотите работать, например, допустим, у вас есть эта структура
![enter image description here](https://i.stack.imgur.com/fVaCf.jpg)
Это из моего проекта, например, у меня есть узел, который нравится, каждый лайк - это кнопка, и внутри этой кнопки у меня есть идентификатор пользователя каждого понравившегося пользователя.сообщение, сообщение представлено с помощью pushKey
Теперь у меня есть другой узел, который называется users, и внутри вы можете видеть мой userID
![enter image description here](https://i.stack.imgur.com/O0pba.jpg)
Как видите, у меня есть тот же идентификатор пользователя в моем узле, что и в моем узле лайков.
Итак, что бы я сделал, это
- Iсохранить все данные в пользователях (с идентификатором пользователя в качестве основного узла pk)
- Когда мне нравится сообщение, я запрашиваю идентификатор пользователя этого понравившегося пользователя, вытащить его и сохранить в моем узле Likes.
Вот так я использую внешний ключ, такой как userID, для работы с 2 разными узлами
Теперь, скажем, я хочу выделить все лайки из одной фотографии, я просто перебираю узел лайков, и каждая нажимная клавиша - это фотография, поэтому я делаю один и тот же процесс и получаю все фотографии и лайкикаждый.Поэтому, если я получаю все лайки фотографий, я также получаю понравившийся идентификатор пользователя, потому что он находится внутри моего узла лайков, а затем я могу просто добраться до узла пользователей и получить все данные от понравившегося пользователя.
PS: не существует специальных методов или чего-то для создания внешних ключей, это зависит от вашей структуры и того, как вы будете создавать свое приложение.Вы сами устанавливаете свой fk, думая о том, как объединить две таблицы и использовать информацию из обеих, в данном случае двух узлов, которые взаимодействуют друг с другом.