How silly is it to not actually use model relationships and write all queries yourself for every method? It seems like things that I can easily write complex queries for proves way to difficult for me to wrap my head around with trying to do with relationships.
As an example in this picture https://imgur.com/a/2BLWH I can easily write the query to allow me to get all of the categories a specific user has ever ordered from. In Laravel, I would be completely lost on how to do that. I suppose at the end of the day, it would be as simple as Auth::user()->load('orders.products.categories') but it's just "new", seems odd.
Don't get me wrong, it could certainly be due to me seeing "simple" examples of how to get data back from models, instead of realizing I can further process results, etc.
I use eloquent for the simple things that it can handle out of the box, and use pure sql queries with parameter binding (pdo) for the complex things that eloquent doesn't have built in. If you find yourself doing a lot of Model::selectRaw(), etc, then might as well just do it using raw sql (imo).
I have many reports that use CASE statements and other things that aren't built into the query builder, so I just use pure sql for that stuff and skip eloquent.
Eloquent is a tool to make a lot of things simpler, and it does it quite well for those things. It can't do everything though since only about 10% of SQL language is built into it.
When you find yourself spending a lot of time trying to make eloquent work the way you want, quit wasting time and just do it in sql. Just take the proper precautions and use parameter binding to avoid sql injection.
Personally, SQL makes my brain go numb and start to leak out of my nose.
I'd rather spend time trying to figure out how to piece together a shed load of relationships in models than spend any time at all doing anything with raw SQL.
But if I wanted (or had) to do SQL, I bloody well could.