После выполнения внутреннего соединения в laravel некоторые модельные методы не работают - PullRequest
0 голосов
/ 21 сентября 2019

В настоящее время я работаю на платформе электронной коммерции, используя laravel, и в одном из разделов у меня есть модель под названием "RubroCaracteristica", ответственность за эту модель состоит в том, чтобы показывать некоторые фильтры в левом разделе списка элементов, такие как характеристики, показанные вамазонка, когда вы ищете продукт.в моей модели у меня есть этот метод.

    public function getVisibleAttribute($visible)
    {
        $visible = ($this->visible == 1 ? 'Yes' : "No");
        return $visible;
    }

Этот метод сообщает системе, должна ли эта характеристика отображаться в системе, но затем я произвел внутреннее объединение для поиска подходящих значений.


        $query = (new RubrosCaracteristicas)->newQuery();

        $query
        ->join("rubros", "rubros.id", "rubros_caracteristicas.idrubro")
        ->select(self::RC.".*", "rubros.pathIds")
        ->get();

Но после того, как я это сделалэто объединение метод getVisibleAttribute всегда возвращает «Нет», и когда я делаю это.

    public function getVisibleAttribute($visible)
    {
        dd($visible);
    }

Возвращает пустой массив.

Я пытался сделать dd () внутри модели, и этовозвращает правильное значение свойства, но когда я выполняю dd () внутри метода, похоже, что свойство $ value пусто

...