De cateva zile ma chinui sa construiesc un query in laravel care imi ordoneze niste anunturi premium si gratuite.
Am asa:
Un model de Anunturi cu id, nume, created_at, etc.
Un model de Plati cu : id, anunt_id, StatusPlata, DataStart, DataEnd, Ordine
Ce vreau sa fac este sa afisez toate anunturile dar incepand cu cele platite (status=Accepte si sa fie in perioada de valabilitate a platii - activ_de_la si activ_pana_la) ordonate dupa coloana ordine, urmate de cele gratuite ordonate dupa created_at. Cred ca acelasi sistem de listare este si pe olx in categorii.
Atunci când folosești with (adică eager loading) se face un query separat pt încărcarea datelor pt relație în obiect. Trebuie sa folosești join ca sa poți face ordonarea respectiva.