У меня есть этот код:
@foreach($subCategories as $subCategory)
<tr data-id="{{ $subCategory->id }}" id="{{ $subCategory->id }}" class="sortItem">
<td class="text-left">
{!! Str::limit($subCategory->category_name, 80, '...') !!}
<p class="text-muted"></p>
</td>
<td class="text-center">
@if ($subCategory->enable == 1)
<span class="label font-weight-bold label-lg label-light-success label-inline">
<i class="ft-thumbs-up"></i> aktywny
</span>
@else
<span class="label font-weight-bold label-lg label-light-danger label-inline">
<i class="ft-thumbs-down"></i> nieaktywny
</span>
@endif
</td>
<td class="text-center">
<a href="{{ route('subcategory.index', ['parentId'=>$subCategory->id]) }}" class="badge badge-primary badge-md h-30px">
<i class="ft-aperture"></i> Rozwiń
</a>
<a href="{{ route('subcategory.edit', ['id'=>$subCategory->id]) }}" class="badge badge-info badge-md h-30px">
<i class="ft-aperture"></i> Edytuj
</a>
<form method="post" action="{{ route('subcategory.destroy', ['id'=>$subCategory->id, 'parentId'=>$parentId]) }}" class="d-inline-block" onSubmit="showAlert();{return false;}">
@method('DELETE')
{{ csrf_field() }}
<input type="submit" class="removeBtn" value="Usuń">
</form>
</td>
</tr>
@endforeach
Иногда в приведенном выше коде возникает ошибка:
Попытка получить свойство id не-объекта (Просмотр: / var / www/resources/views/admin/categories/subcategory_list.blade.php)
Когда я отлаживаю, проблема заключается в том, что в моей подкатегории $ у меня есть:
App\Models\Category {#487 ▼
#quarded: array:1 [▶]
#fillable: array:11 [▶]
+timestamps: false
#connection: "mysql"
#table: "categories"
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#attributes: array:12 [▶]
#original: array:12 [▶]
#changes: []
#casts: []
#classCastCache: []
#dates: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: []
#touches: []
#hidden: []
#visible: []
#guarded: array:1 [▶]
#pending: null
#moved: false
}
Когда я отлаживаю:
Kalnoy\Nestedset\Collection {#487 ▼
#items: array:3 [▼
0 => App\Models\Category {#1423 ▶}
1 => App\Models\Category {#1422 ▶}
2 => App\Models\Category {#1426 ▶}
]
}
Этот код работает нормально.
Как я могу защитить свою функцию foreach, чтобы она не отображала ошибку?