Relationships fields: belongsTo/belongsToMany
QuickAdminPanel supports two types of relationships between CRUDs:
  • One-to-Many: belongsTo() + hasMany()
  • Many-to-Many: belongsToMany().
To create a relationship, you just need to choose field type belongsTo or belongsToMany.
You don't need to manually create separate field or pivot table, they will be created automatically:
  • In case of belongsTo, QuickAdminPanel will automatically create DB column xxxxxx_id with a foreign key to the parent table.
  • In case of belongsToMany, QuickAdminPanel will automatically create a pivot table, you don't need to create that table manually.
Here are examples of filled-in forms for belongsTo and belongsToMany:
This will automatically generate column vehicles.owner_id with foreign key to users table
This will automatically generate role_user pivot table
​

Showing Related Children Records on Parent's Page

One more feature: you can enable the children's records to be shown in a show() method page of a parent CRUD.
If you tick that checkbox, then on the View page of the Parent's CRUD you will see a table of children's record:
You click "View" on parent's record
And it will show children records at the bottom

Video Demo of Relationships

This is a quick video demo of both belongsTo and belongsToMany.

BelongsTo Relationship to Itself: The Same CRUD

Quick video demo how you can create a relationship to itself, for parent-children "tree". For example, Category belongsTo Category with category_id field.

Customizations of Relationships

Articles that may also be helpful:
Last modified 10mo ago