Доки про связи читал, но не ясно.
Есть сущность/таблица Document.
Есть сущность/таблица DocumentType - по факту, это лишь справочник.
Document имеет внешний ключ на таблицу DocumentType
Я пытался сделать выборку:
return $this->model
->with('document_types')
->orderBy($orderBy, $sort)
->paginate($paged);
Но возникает ошибка:
Call to undefined relationship [document_types] on model [App\Models\Docflow\Document].
Думал в модели Document объявить связь:
public function document_types()
{
return $this->hasOne(DocumentType::class, 'type_id', 'id');
}
получил это:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'document_types.type_id' in 'where clause' (SQL: select * from `document_types` where `document_types`.`type_id` in (1, 3, 5, 18, 19, 20, 21, 22, 23, 24))
И до меня дошло, что связь Document->DocumentType
скорее всего не является отношениями, которые описаны в документации. Это просто ссылка на справочник, а справочник ничего не знает о сущности. Я прав?
Если да, то как обрабатывать такие ситуации, хотелось бы во view из объекта документа иметь объект ТипаДокумента.