Mam takie pytanko, czy jest jakis elegancki sposob by wypisac np 5 ostatnich wpisow z bazy danych.
Chodzi o to ze mam powidzmy kiladziesiat roznych tabel w bazie i kazda ma pole created_at wiec mozna teoretycznie z kazdej w najgorszym przypadku zrobic selecta 5 ostatnich wpisow i wtedy je wszytskie po tym polu porownac i 5 najnowszych wybrac. Tylko malo to eleganckie i zapytanie sql bedzie kosmiczne. Nie ma moze jakiegos gema czy rozwiazania gotowego, by najswiezsze rzeczy wypisac?
Lepiej jedno zapytanie z union gdzie wrzucisz te 20 zapytań do konkretnych tabel i na tym zapytaniu limit. Ogólnie im mniej danych wyciągasz z bazy tym lepiej, lepiej mieć 5 rekordów niż 100 tylko po to żeby je potem lokalnie sortować.
no tak w sumie racja, tylko problem moze byc ze z kazdej tabeli rozne dane potzrebuje, no kazda ma created_at i id, ale w sumie jakies nazwy itp by jakies linki sensowne z tego wygenerowac ;/ ech porywam sie chyba z motyka na slonce:p
Ja bym nie kombinował, bo to pewnie będzie ekran dla 1-2 userów (adminów).
I może jednak nie chcesz wyrzucać wszystkich modeli. Bo select to jedno, ale potem jeszcze trzeba toto wyświetlić… i się za*^#%ać kodując widoki
no wlasnie o to wyswietlnie mi chodzi a panel ma byc dla wszystkich, taki zakatek w ktorym bedzie sie pojawiac co ostatnie killka zmian na stronie.
Czyli strona ma news, forum, zdjecia, teksty, … i ma sie w panelu bocznym pokazywac 5 ostatnich zmian w ogole na stronie. Taki luzny pomysl. Jak na razie mi sie odechciewa wiec pewnie oleje to.
Imho te wszystkie modele powinienes spiąć w modelu Resource. Poczytaj o polimorfii (*_id i *_type). i potem po prosturobił selecta z modelu Resource. W Agile Web Development jest przykład