Laravel Eloquent的表命名约定hasManyThrough关系

The main entity Subject has multiple Comment's, and the Comment has multiple Rate's.

How should I name the migration tables?

I've googled that the naming for hasMany relation is subjects and subject_comment.

Should the Rate table be named subject_comment_rate or subject_comments_rate or comment_rate?

By default laravel pivot tables follow the convetion of naming the table in alphabetical order with singular names so if you want to follow the convention you should name your tables like so:

  • subjects
  • comments
  • comment_subject
  • rates
  • comment_rate

You can deviate from this convention but then you have to specify the name of the pivot table when setting up the relationship