Zoekresultaten met pagination.
Als je de zoekopdracht uitvoert, komt dus de view met een lijst met alle resultaten.
Elk zoekresultaat is gewoon een tabelrij in een table, en elk resultaat heeft ook een checkbox.
De table staat weer in een apart formulier, met een submit button.
De aangevinkte zoekresultaten kun je weer verzenden met het formulier om deze bijvoorbeeld te verwijderen.
De problemen die ik nu dus heb:
1. Bij pagination heb je links waarmee je naar de vorige of volgende pagina navigeert. Het nadeel is dat als je checkboxes hebt aangevinkt, en naar de volgende pagina wil, dat dit dus eigenlijk geen nut heeft. De vorige 'pagina' bestaat niet meer, de aangevinkte resultaten worden 'vergeten'.
2. Bij het navigeren tussen de pagination pagina's wordt de zoekopdracht niet opnieuw uitgevoerd, want dit is iets dat in een vorige request is gedaan, en heeft nu niets meer te maken met een nieuwe request om de volgende resultatenpagina te bekijken.
De zoekquery kan erg uitgebreid worden (door de vele zoekopties), dus het lijkt me lelijk en onhandig om een extreem lange GET querystring in de URL te zetten. Daarmee bedoel ik niet per-se dat ik de letterlijke SQL query in een URL zou zetten, maar ook niet een lijst met de verzonden gegevens van het zoekformulier.
Probleem nummer 2 is nog wel op te lossen met sessions. Maar probleem 1 lijkt me moeilijker.
Gewijzigd op 26/11/2016 17:05:36 door Jan terhuijzen
De GET method is doorgaans het handigste voor gebruik bij zoekformulieren, alle informatie zit dan namelijk in je URL. Aan de hand daarvan kun je je querystring opnieuw opbouwen. Deze informatie kun je tevens gebruiken om je formulier opnieuw te initialiseren.