У меня есть таблица базы данных, подобная этой:
id, title, description (NULL), parent_product_template_id (NULL)
У меня есть внешний ключ parent_product_template_id, который ссылается на столбец идентификатора из той же таблицы.
в контроллере я выполнил запрос:
$productTemplates = ProductTemplate::whereNull('parent_product_template_id')->get();
и сжимал результаты и передавал их в представление.
в представлении у меня есть этот цикл forelse:
@foreach($productTemplates as $productTemplate)
$productTemplate->childs
@endforeach
, где модель ProductTemplate выглядит следующим образомthis.
class ProductTemplate extends Model
{
public $timestamps = false;
public function parent()
{
return $this->belongsTo('App\Models\ProductTemplate');
}
public function childs()
{
return $this->hasMany('App\Models\ProductTemplate');
}
}
наконец, проблема в том, что при выполнении кода я получаю это сообщение об ошибке
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'product_templates.product_template_id' in 'where clause' (SQL: select * from `product_templates` where `product_templates`.`product_template_id` = 1 and `product_templates`.`product_template_id` is not null) (View: E:\wamp\www\SyriaShop\resources\views\admin\product-template\index.blade.php)
, почему и как он использовал такой странный ключ 'product_template_id' вместостолбец реального идентификатора