Eloquent - это "надстройка" над БД. Сам по себе он ничего создавать не требует.
В твоем случае каждый пост относится к какой-то категории. То есть в таблице 'posts' есть поле 'category_id'
(ссылающееся на поле 'id' таблицы 'categories')
Когда ты описываешь модели в Eloquent то указываешь эту связь
для категории
HasMany('App\Post', 'category_id', 'id')
для поста
BelongsTo('App\Category', 'category_id', 'id')
---
если ты используешь отношения Eloquent для вывода постов
Category::with('posts')
$category->posts()
то связывать надо
если ты используешь where
Posts::where('category_id', $catid)
то связывать не надо