Hi, IMHO brauchst Du den count, und die Position des Datensatzes im Resultset. Um dann mit dem Offset und Limit die richtige Seite zu öffnen.
Vielleicht hilft Dir dieser Thread: http://forums.mysql.com/read.php?20,126556,126556#msg-126556 Google-Suche: find, position, resultset, mysql (wenn Du überhaupt mysql benutzt) Besten Gruß Jan Am 29. Oktober 2008 14:23 schrieb Michael Kastner <[EMAIL PROTECTED]>: > Hallo Jens, > > eleganter wäre schön. > > Darum geht's: Der Nutzer erhält als Ergebnis einer Produktsuche eine > Ergebnisliste von Produkten. Er kann eines der Produkte anklicken und > gelangt zur Detailseite. Und von dort soll er die Möglichkeit haben zu > "normalen" Produktliste mit der entsprechenden Seite zu navigieren (nicht > zurück zur Produktsuche). > > Das Problem besteht darin, daß der Nutzer über die Suchergebnisliste auf > die Detailseite gelangt und nicht über die paginierte Standardliste. Sonst > wär's ja einfach ;-) > > > Viele Grüße > > Michael > > Johannes Fahrenkrug schrieb: > >> Hallo Michael, >> >> das stimmt natuerlich! >> Wozu brauchst du das denn ueberhaupt? Vielleicht kann man das ja >> eleganter loesen. >> >> - Johannes >> >> 2008/10/29 Michael Kastner <[EMAIL PROTECTED]>: >> >>> Hallo Johannes, >>> >>> vielen Dank für Deine Idee. So ähnlich habe ich das auch schon für kleine >>> Tabellen gelöst. Im aktuellen Fall betrifft es allerdings ein paar >>> tausend >>> Datensätze. Da ist dann so eine Schleife keine so gute Lösung. >>> >>> Viele Grüße >>> >>> Michael >>> >>> Johannes Fahrenkrug schrieb: >>> >>>> Hallo Michael, >>>> >>>> wenn du das nur ab und an verwendest, koenntest du diese Methode in >>>> ein Modul packen, dass du in all deinen Modellen includest (ich gehe >>>> davon aus, dass du will_paginate verwendest): >>>> >>>> def page_number >>>> page = 1 >>>> >>>> while true >>>> objects_on_page = self.class.paginate :page => page, :order => >>>> 'created_at DESC' >>>> >>>> if objects_on_page >>>> return page if objects_on_page.include?(self) >>>> else >>>> return -1 >>>> end >>>> >>>> page += 1 >>>> end >>>> end >>>> >>>> Das geht wahrscheinlich noch eleganter, aber die Page findest du so >>>> auf jeden fall raus. >>>> >>>> - Johannes >>>> >>>> 2008/10/29 Michael Kastner <[EMAIL PROTECTED]>: >>>> >>>>> Hallo, >>>>> >>>>> ich habe hier ein ziemlich nerviges Problem, für das ich noch keine >>>>> gute >>>>> Lösung gefunden habe. >>>>> >>>>> Wie kann ich, wenn ich nur die Datensatz-Id zur Verfügung habe, >>>>> herausfinden, auf welcher Seite einer Paginierung sich der Datensatz >>>>> befindet? >>>>> >>>>> Viele Grüße >>>>> >>>>> Michael Kastner >>>>> >>>>> _______________________________________________ >>>>> rubyonrails-ug mailing list >>>>> [email protected] >>>>> http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug >>>>> >>>>> >>>>> >>>> >>>> _______________________________________________ >>> rubyonrails-ug mailing list >>> [email protected] >>> http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug >>> >>> >> >> >> _______________________________________________ > rubyonrails-ug mailing list > [email protected] > http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug > -- Jan Prill Rechtsanwalt Babendiekstraße 60 B 22587 Hamburg Tel +49 (0)40 41265809 Fax +49 (0)40 380178-73022 Mobil +49 (0)171 3516667
_______________________________________________ rubyonrails-ug mailing list [email protected] http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
