Это один из тех случаев "я ничего не изменил, и он перестал работать". Месяц go моя развернутая версия проекта на сервере работала нормально, сегодня я выдвинул некоторые изменения, которые не имели ничего общего с модельными отношениями, и внезапно начал выдавать мне эту ошибку.
Call to undefined method Illuminate\Database\Query\Builder::websites()
Часть скрипта, которая выдает эту ошибку
if(!empty($websites))
{
$filePdf->websites()->attach($websites);
}
$ filePdf имеет тип App \ File, я проверил это с помощью get_class ()
Вот определенные отношения App \ File. php
public function websites()
{
return $this->belongsToMany('App\website', 'file_websites', 'file_id', 'website_id');
}
Приложение \ веб-сайт. php
public function files()
{
return $this->belongsToMany('App\File', 'file_websites', 'website_id', 'file_id');
}
Структура таблицы файловых сайтов
Schema::create('file_websites', function (Blueprint $table) {
$table->bigIncrements('id');
$table->unsignedBigInteger('file_id');
$table->unsignedBigInteger('website_id');
$table->foreign('file_id')->references('id')->on('files');
$table->foreign('website_id')->references('id')->on('websites');
$table->timestamps();
});
На моей локальной машине все работает нормально , без ошибок, но как только я разверну его, это начинает происходить. Любая помощь будет принята с благодарностью.
Редактировать: Вот как объявляется $ filePdf
$filePdf= new File();
$filePdf->filename = $name;
$filePdf->language_id = $request->input('fileLanguage');
$filePdf->save();