как @ mustafa.akcoban говорит ...
Когда вы используете ownTo, Eloquent будет работать следующим образом
$this->belongsTo('App\City', 'foreign_key', 'other_key');
// foreign_key = is the primary key in the related model, by default 'id' for Eloquent
// other_key = is the field in the current model that contains the id of the other model, by default othermodelname_id for Eloquent
// For eg. 'App\City', 'id', 'city_id'
При использовании hasMany Eloquent работает следующим образом
$this->hasMany('App\Model', 'currentmodel_id', 'primary_key');
// currentmodel_id = is the field that contains the current model primary key in the related model
// primary_key = is the current primary key model that will be in the other model, by default id for Eloquent
// For eg. 'App\City', 'state_id', 'id'
Помните, что вы можете или не можете использовать второй и третий параметр, если что-то не так, дамп Laravel сообщит вам, какой столбец не был найден в таблице, и вы сможете это исправить.
Пожалуйста, попробуйте на практике, и дайте мне знать, как это работает :)