2015-07-06 4 views
1

У меня есть много отношений, которые были настроены и смоделировали сводную таблицу. Кроме того, в сводной модели у меня установлены отношения morphToMany.Laravel/Eloquent - Множество разных моделей с морфологическим отношением

Здесь представлено схематическое изображение установки.

diagram

Проблема я имею что я не могу тянуть в стыки атрибут на модели поворота.

У меня этот код в модели Dimension;

return $this->belongsToMany('Datasource', 'dimension_datasource')->withPivot('joins'); 

Но я получаю эту ошибку: Неизвестный столбец dimension_datasource.joins

Я попытался создать аксессор на модели поворота, но кажется, что это игнорируется, поскольку я получаю ту же ошибку.

Спасибо,

Geoff

+0

Пожалуйста, покажите свои модели, вы установили модель для сводной таблицы? Как вы установили отношение морфинга в таблице размер_данных? –

+0

Да, есть модель Dimension_datasource_pivot и соответствующий класс Dimension_datasource, который имеет только один метод: newPivot, который возвращает экземпляр Dimension_datasource_pivot. Для отношения морфинга у меня есть сводная таблица, называемая «joinables», которая имеет Dimension_datasource_pivot как тип joinable_type, где это применимо. –

+0

Ваши другие модели расширяют вашу новую базовую опорную модель? –

ответ

0

Это работает в настоящее время. Я с тревогой признаю, что я не уверен на 100%, но я уверен, что это связано с кодировкой символов обратных косых черт в именах полностью квалифицированных классов в столбце joinable_type таблицы joinables. Таким образом, если у вас такая же проблема, попробуйте посмотреть там (в другом месте в Интернете есть указания, что Laravel должен избегать этих обратных косых черт, а также неопределенное предположение о том, что параметры сервера актуальны).

Извините, я не могу быть более конкретным!

Смежные вопросы