Еще проще найти Google Id, просто используя модель Справочника . Хотя в документации упоминается, что существует способ получить текущий подписанный идентификатор пользователя (то есть Google Id), в нем неясно указано, как - возможно, документацию можно улучшить здесь. Другая проблема заключается в том, что во многих случаях электронная почта текущего активного пользователя называется идентификатором, например, в устаревшем методе Session.getActiveUser().getUserLoginId()
. В любом случае это правильный способ получить идентификатор.
var query = app.models.Directory.newQuery();
query.filters.PrimaryEmail._equals = Session.getActiveUser().getEmail();
var result = query.run();
var GoogleId = result[0]._key;
Таким образом, с помощью этого GoogleId вы можете безопасно связывать разные модели друг с другом и не беспокоиться о том, что целостность базы данных может нарушиться, если электронная почта пользователя, на которую уже ссылаются, меняется.
Связать различные модели можно, просто создав модель, которая действует как модель-оболочку для модели Справочника, и сохранив в ней GoogleId. Затем связать эту модель с другими моделями, где вы хотите отслеживать данные, связанные с пользователем, потому что, к сожалению, мы не можем напрямую связать модель каталога с другими моделями.