Вот как я это сделаю.
Все ваши модели простираются от основания Eloquent ORM model class, что означает, что вы можете переписать искатели/геттеры/сеттеры и т. Д. В ваш расширенный класс.
Ваша модель Google Place - это особый случай, который не зависит от базы данных, а от API Google Адресов.
Следовательно, вам потребуется перезаписать базовые методы модели Eloquent для модели Google Адресов.
Например:
class GooglePlace extends Eloquent{
/**
* Find a model by its primary key or return new static.
*
* @param mixed $id
* @param array $columns
* @return \Illuminate\Support\Collection|static
*/
public static function findOrNew($id, $columns = ['*'])
{
# we do not need Eloquent's database based implementation
# api code to get Google Place using $id
# perhaps use $columns to get only specific fields about the place
# from the API?
}
}
Тогда, вы только нужно связать пользователя с места в сводной таблице с помощью Google Place ID.