Laravel 11! Когда я пытаюсь перечислить продукты в шаблоне блейда, я получаю сообщение об ошибке «Попытка прочитать свойство «имя» в int»
EDIT: конечно, я также отправить экспорт таблицы продуктов, внешние ключи определены.
В шаблоне блейда я передаю данные следующим образом
@foreach($products as $product)
{{ $product->name }}
{{ $product->category->name }}
{{ $product->subcategory->name }}
@endforeach
Мой ProductsController.php
public function create(): View
{
$products = Products::with(['category', 'subcategory'])->get();
return view('products', compact('products'));
}
Модели продуктов, категория, подкатегория
class Products extends Model
{
use HasFactory;
protected $table = 'products';
public function category(): BelongsTo
{
return $this->belongsTo(Category::class);
}
public function subcategory(): BelongsTo
{
return $this->belongsTo(SubCategory::class);
}
}
class SubCategory extends Model
{
use HasFactory;
protected $table = 'subcategory';
public function products(): HasMany
{
return $this->hasMany(Products::class, 'subcategory', 'id');
}
public function category(): BelongsTo
{
return $this->belongsTo(Category::class, 'id_category', 'id');
}
}
class Category extends Model
{
use HasFactory;
protected $table = 'category';
public function subCategories(): HasMany
{
return $this->hasMany(SubCategory::class, 'id_category');
}
public function products(): HasMany
{
return $this->hasMany(Products::class, 'category', 'id');
}
}
Я в растерянности, я действительно не знаю, что мне делать. Я на 90% уверен, что допускаю ошибку где-то в моделях, при определении связей между таблицами. Но я не уверен на 100%. Хуже всего то, что ни Google Gemini, ни ChatGPT не решили мою проблему, несмотря на 2 часа попыток.
CREATE TABLE `ala_products` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`category` int(10) unsigned NOT NULL,
`subcategory` bigint(20) unsigned NOT NULL,
`color_1` varchar(10) NOT NULL,
`color_2` varchar(10) NOT NULL,
`min_size` smallint(6) NOT NULL DEFAULT 0,
`max_size` smallint(6) NOT NULL DEFAULT 0,
`order_x` smallint(6) NOT NULL DEFAULT 0,
`active` enum('0','1') NOT NULL DEFAULT '1',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `ala_products_category_foreign` (`category`),
KEY `ala_products_subcategory_foreign` (`subcategory`),
CONSTRAINT `ala_products_category_foreign` FOREIGN KEY (`category`) REFERENCES `ala_category` (`id`),
CONSTRAINT `ala_products_subcategory_foreign` FOREIGN KEY (`subcategory`) REFERENCES `ala_subcategory` (`id`)
Подробнее здесь: https://stackoverflow.com/questions/788 ... ame-on-int
Laravel 11 Попытка прочитать свойство «имя» в int ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1722855068
Anonymous
Laravel [b]11[/b]! Когда я пытаюсь перечислить продукты в шаблоне блейда, я получаю сообщение об ошибке «[b]Попытка прочитать свойство «имя» в int[/b]»
EDIT: конечно, я также отправить экспорт таблицы продуктов, внешние ключи определены.
В шаблоне блейда я передаю данные следующим образом
@foreach($products as $product)
{{ $product->name }}
{{ $product->category->name }}
{{ $product->subcategory->name }}
@endforeach
Мой ProductsController.php
public function create(): View
{
$products = Products::with(['category', 'subcategory'])->get();
return view('products', compact('products'));
}
Модели продуктов, категория, подкатегория
class Products extends Model
{
use HasFactory;
protected $table = 'products';
public function category(): BelongsTo
{
return $this->belongsTo(Category::class);
}
public function subcategory(): BelongsTo
{
return $this->belongsTo(SubCategory::class);
}
}
class SubCategory extends Model
{
use HasFactory;
protected $table = 'subcategory';
public function products(): HasMany
{
return $this->hasMany(Products::class, 'subcategory', 'id');
}
public function category(): BelongsTo
{
return $this->belongsTo(Category::class, 'id_category', 'id');
}
}
class Category extends Model
{
use HasFactory;
protected $table = 'category';
public function subCategories(): HasMany
{
return $this->hasMany(SubCategory::class, 'id_category');
}
public function products(): HasMany
{
return $this->hasMany(Products::class, 'category', 'id');
}
}
Я в растерянности, я действительно не знаю, что мне делать. Я на 90% уверен, что допускаю ошибку где-то в моделях, при определении связей между таблицами. Но я не уверен на 100%. Хуже всего то, что ни Google Gemini, ни ChatGPT не решили мою проблему, несмотря на 2 часа попыток.
CREATE TABLE `ala_products` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`category` int(10) unsigned NOT NULL,
`subcategory` bigint(20) unsigned NOT NULL,
`color_1` varchar(10) NOT NULL,
`color_2` varchar(10) NOT NULL,
`min_size` smallint(6) NOT NULL DEFAULT 0,
`max_size` smallint(6) NOT NULL DEFAULT 0,
`order_x` smallint(6) NOT NULL DEFAULT 0,
`active` enum('0','1') NOT NULL DEFAULT '1',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `ala_products_category_foreign` (`category`),
KEY `ala_products_subcategory_foreign` (`subcategory`),
CONSTRAINT `ala_products_category_foreign` FOREIGN KEY (`category`) REFERENCES `ala_category` (`id`),
CONSTRAINT `ala_products_subcategory_foreign` FOREIGN KEY (`subcategory`) REFERENCES `ala_subcategory` (`id`)
Подробнее здесь: [url]https://stackoverflow.com/questions/78834068/laravel-11-attempt-to-read-property-name-on-int[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия