Привет. Есть связь многие-ко-многим с таблицей
respondent_answer
(laravel 5.3)
class Respondent {
// ...
public function answers()
{
return $this->belongsToMany(Answer::class);
}
}
class Answer {
// ...
public function respondents()
{
return $this->belongsToMany(Respondent::class);
}
}
так же есть
Job
который выполняется в очереди
class AnalyzeRespondentAnswersJob implements ShouldQueue
{
use InteractsWithQueue, Queueable, SerializesModels;
// ...
public function handle()
{
$respondent = $this->event->respondent->fresh(['answers']); // тут падает ошибка RelationNotFoundException
// ...
}
}
Текст ошибки:production.ERROR: exception 'Illuminate\Database\Eloquent\RelationNotFoundException' with message 'Call to undefined relationship [answers] on model [App\Models\Respondent].'
Обратите внимание, что связь
answers
существует, и в tinker'е она правильно отрабатывает. Так же на другом сервере точно такой же код работает без ошибок.
Вот что я пробовал делать чтобы избавиться от ошибки:
composer dump
php artisan cache:clear
php artisan clear-compiled
php artisan optimize
php artisan queue:restart
service nginx restart
service php-fpm restart
но ошибка продолжает падать при выполнении Job'а. Что я упустил?