Laravel Маяк PHP Вызов неопределенной связи - но только на сервере - PullRequest
1 голос
/ 17 июня 2020

Я разрабатываю приложение, использующее сервер Lighthouse GraphQL для Laravel. В целом это здорово, но я столкнулся со странным поведением.

Когда я запускаю его локально, используя Laravel Valet, он работает отлично. Когда я запускаю его на промежуточном сервере, он терпит неудачу с Call to undefined relationship [venue] on model [App\\Event]. Событие имеет одно место проведения, а место может иметь много событий.

Когда я использую tinker на сервере, он находит отношения в порядке.

Взаимосвязь по событию настраивается следующим образом

public function venue() : BelongsTo
{
    return $this->belongsTo('App\Venue');
}

И взаимосвязь в Venue равна

 public function events() : HasMany
{
    return $this->hasMany('App\Event', 'venue_id');
}

В schema.graphql отношение определяется как

 type Event {
    id: ID!
    [...]
    venue: Venue @belongsTo
}

И другие отношения работают нормально. Те же версии локально и на постановке.

Есть идеи, что происходит?

1 Ответ

0 голосов
/ 29 июня 2020

Отвечая на свой вопрос здесь. Оказалось, что проблема была вызвана разницей в версии Laravel. При этом второстепенная версия.

Устранена проблема путем блокировки версии на данный момент и возврата к ней в следующем выпуске.

...