Мне любопытно, почему отношение Eloquent для hasMany имеет другую подпись, чем для belongsToMany. В частности, имя таблицы настраиваемых соединений - для системы, в которой данный Comment принадлежит ко многим Role s, а для данного Role будет много Comment s, я хочу сохранить отношение в таблице с именем my_custom_join_table и установите ключи как comment_key и role_key.
return $this->belongsToMany('App\Role', 'my_custom_join_table', 'comment_key', 'role_key'); // works
Но в обратном я не могу определить эту пользовательскую таблицу (по крайней мере, документы ее не упоминают):
return $this->hasMany('App\Comment', 'comment_key', 'role_key');
Если у меня есть объект Role, который hasMany Comments, но я использую имя нестандартной таблицы для хранения этого отношения, почему я могу использовать эту нестандартную таблицу, идущую в одну сторону, но не другую?
