В Laravel scout запрос на соединение с эластичной поисковой системой не работает

Я работаю над эластичным поиском с помощью laravel scout; мой поиск работает правильно для реляционной таблицы, но я получил ошибку ниже для запроса соединения. Method Laravel\Scout\Builder::with does not exist.
Джоинги работают или не работают в поиске. Какое другое решение для этого?

В своей модели пост-модели я написал следующий метод. В toSearchableArray у меня есть данные поиска из таблиц сообщений и пользователей (имя пользователя).

        public function toSearchableArray()
            {
                $array = [
                    'user_id' => $this->user_id,
                    'post' => $this->post,
                ];
                $extra_data = [];
                $extra_data['name'] = $this->user->name;

                return array_merge($array, $extra_data);
            }

            /**
             * Get the index name for the model.
             *
             * @return string
             */
            public function searchableAs()
            {
                return 'posts_index';
            }

            public function user()
            {
                return $this->belongsTo('App\User');
            }

В репозитории я написал public function elasticSearch($search), эту функцию для получения данных о пользователях и публикациях. В репозитории я написал эту функцию, у меня ошибка метода with. Я хочу показать данные из таблиц постов и пользователей; как я это показываю?

         public function elasticSearch($search)
            {
                return $this->post->search($search)->with('user')->get();
                //$ss = Post::search($search)->get();
            }

Вы можете сказать мне, как вы вызываете эту функцию. а также скажите мне значение $ this

Sagar Ahuja 26.06.2018 10:31

Post и User являются моделями, защищенными $ Post; защищенный пользователь $; публичная функция __construct (Post $ post, User $ user) {$ this-> post = $ post; $ this-> user = $ user; }

ashwini 26.06.2018 10:59

Я понимаю, что вы инициализировали значение в конструкторе, как вы вызываете функцию и каково значение $ this

Sagar Ahuja 26.06.2018 11:09

вы хотите сказать, что этот метод поиска $ this-> post-> search ($ search) -> with ('user') -> get (); этот метод поиска является методом эластичного поиска, который я написал в этом формате $ this-> post-> search ($ search) -> with ('user') -> get (); вместо Post :: search ($ search) -> with ('user') -> get ();

ashwini 26.06.2018 11:44

Помогите, пожалуйста .

ashwini 26.06.2018 12:12

Я могу помочь, только если смогу понять ошибку, дорогая.

Sagar Ahuja 26.06.2018 12:34
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
404
0

Другие вопросы по теме