собственность не существует, но отношения установлены - PullRequest
0 голосов
/ 22 мая 2018

Я пытаюсь получить атрибут из таблицы, но он говорит мне, что он не существует:

Мое представление:

@foreach ($weeklyTicketsclosed as $ticket)
  @if($ticket->statut=='fermé')
    <tr>
    <td>{{ $ticket->societe}}</td>
    <td>{{ $ticket->intervenant}}</td>
    <td>{{ $ticket->assistance->level}}</td>
    <td>{{ $ticket->message}}</td>
    <td>{{ $ticket->urgence->niveau}}</td>
    <td>{{ $ticket->statut}}</td>
    <td>{{ $ticket->utilisateur->name}}</td>
    <td>{{ $ticket-> created_at}}</td>
    <td>{{ $ticket->gestions->observations}}</td>
    </tr>
    @endif
  @endforeach

Класс моих билетов:

class Tickets extends Model
{
    protected $table="tickets";
    protected $fillable=['message','utilisateur_id','urgence_id','societe','typeassistance','intervenant'];

    public function urgence()
    {
      return $this->belongsTo(\App\Urgence::class);
    }
    public function gestions()
    {
      return $this->hasMany(\App\Gestion::class, 'utilisateur_id');
    }
    public function assistance()
    {
      return $this->belongsTo(\App\assistance::class, 'typeassistance', 'id');
    }

Мой класс Gestion:

class Gestion extends Model
{
    protected $table="gestions";
    protected $fillable=['description','duree','ticket_id','utilisateur_id','observations'];

    public function tickets(){
      return $this->belongsTo(\App\Tickets::class);
    }
}

Консоль возвращает ошибку «не существует» в билете-> gestions-> наблюдения.Кажется, я не могу понять, откуда это происходит, отношения между классами Gestion и Tickets выполняются так же, как отношения между Tickets и Urgence или Tickets and Assistance.

Ошибка: свойство [наблюдения] несуществуют в этом экземпляре коллекции.(Просмотр: C: \ xampp \ htdocs \ rmstickets \ resources \ views \ export \ ticketsexcelferme.blade.php)

Не могли бы вы мне помочь?

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 22 мая 2018

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

0 голосов
/ 22 мая 2018

Один билет имеет много Gestions, поэтому $ticket->gestions действительно массив / коллекция объектов.Вы захотите перебрать его или просто получить первый:

<td>
  @foreach($ticket->gestions as $gestion)
  {{ $gestion->observations}}
  @endforeach
</td>

или

<td>{{ $ticket->gestions->first()->observations}}</td>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...