Php Laravel 6-对未定义关系的Illumb\Database\Eloquent\RelationNotFoundException调用
我想将Php Laravel 6-对未定义关系的Illumb\Database\Eloquent\RelationNotFoundException调用,php,laravel,laravel-6,Php,Laravel,Laravel 6,我想将nama列从Supplier表发送到表中的Transaction\u,但我忽略了此错误 Illumb\Database\Eloquent\RelationNotFoundException调用 模型上未定义的关系[get_transactions_in] [App\Transaction\u in] 模型中的事务\u class Transaction_in extends Model { protected $guarded = []; public function
nama
列从Supplier
表发送到表中的Transaction\u,但我忽略了此错误
Illumb\Database\Eloquent\RelationNotFoundException调用
模型上未定义的关系[get_transactions_in]
[App\Transaction\u in]
模型中的事务\u
class Transaction_in extends Model
{
protected $guarded = [];
public function get_suppliers(){
return $this->belongsTo(Supplier::class, 'Supplier_id');
}
}
class Supplier extends Model
{
protected $guarded = [];
public function get_transactions_in(){
return $this->hasMany(Transaction_in::class);
}
}
供应商型号
class Transaction_in extends Model
{
protected $guarded = [];
public function get_suppliers(){
return $this->belongsTo(Supplier::class, 'Supplier_id');
}
}
class Supplier extends Model
{
protected $guarded = [];
public function get_transactions_in(){
return $this->hasMany(Transaction_in::class);
}
}
控制器中的事务\u
public function index()
{
$transaction_ins = Transaction_in::with('get_transactions_in')->get();
return view('transactionsIN.index', compact('transaction_ins', $transaction_ins, 'supplierList'));
}
外键是基于Supplier
表中的id
的Supplier\u id
。您在中使用调用了错误的关系,它应该是get\u suppliers
而不是get\u transactions\u
模型中的交易有get\u suppliers
方法,所以
$transaction_ins = Transaction_in::with('get_suppliers')->get();
只需使用以下命令更改控制器代码
public function index()
{
$transaction_ins = Transaction_in::with('get_suppliers')->get();
return view('transactionsIN.index', compact('transaction_ins', $transaction_ins, 'supplierList'));
}
出现错误是因为模型中的事务中没有类似“get_transactions_in”的关系为什么错误消息不清楚?它说在您的Transaction_in模型中没有具有该名称的方法,这是正确的,因为该方法是供应商模型的一部分,不是吗?