Недавно я нашел ответ на свой вопрос:
Вышеуказанная ошибка возникает из-за того, что не было установлено соединение между SDK и собственным проектом React.
Эта ошибка возникает из-за того, что метод Adcolony.setUser () возвратил неопределенное значение, а React-native не получил то, что произошло; в конце концов была обнаружена необработанная ошибка обещания.
После многих поисков я понял, что когда вы используете Expo для разработки собственного проекта React, Expo нужен Expokit, библиотека, которая позволяет Expo запускать React. родные команды, такие как «реакция-нативная ссылка»; другими словами, Expokit - это дополнительная библиотека для пользовательской реализации SDK.
Джон прав. Вот пример:
$this->db->select('movies.id,
movies.title,
movies.year,
movies.runtime as totaltime,
posters.poster_url');
$this->db->from('movies');
$this->db->join('posters', 'movies.id= posters.id');
$this->db->where('movies.id', $id);
$q = $this->db->get();
Это вернет объекты, которые имеют свойства -> id, -> title, -> year, -> totaltime и -> poster_url. Вам не понадобится дополнительный код для извлечения данных из каждой строки.
Не забывайте, что если синтаксис Active Record становится немного громоздким, вы можете использовать полные запросы SQL и получить те же результаты:
$sql = "SELECT movies.id,
movies.title,
movies.year,
movies.runtime as totaltime,
posters.poster_url
FROM movies
INNER JOIN posters ON movies.id = posters.id
WHERE movies.id = ?"
return $this->db->query($sql, array($id))->result();
Оба формы будут обеспечивать правильное экранирование ваших данных.
Звездочка вернет все поля. Чтобы вернуть их подмножество, т. Е. Все поля, составляющие повторяющееся поле идентификатора, просто перечислите столбцы, которые вам требуются, а не используйте «*».
Часто хорошей идеей является не использовать звездочку в любом случае. В будущем приложение может добавить в таблицу большое поле, которое будет лишним ваших требований и замедлит ваши запросы.