[Django] Suche markieren?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

csc hat geschrieben:Aber er zeigt mir alle Ergebnisse aus SNAME FNAME SPITZNAME und FAMILIENNAME an ohne zu markieren, wo er genau der Wort gefunden hat.
So ungefähr habe ich dein Problem jetzt verstanden obwohl ich immer noch schwer auseinander halten kann was "er" macht und was dein eigener Code ist. Du lässt anscheinend im Endeffekt auf SQL-Ebene so etwas generieren wie

Code: Alles auswählen

SELECT * From tabelle
  WHERE
    feld1 = 'wert' OR
    feld2 = 'wert' OR
    feld3 = 'wert'
Wenn du so ein Statement hast dann bekommst du eine Ergebnisliste, aber keine Details darüber in welchem Feld etwas gefunden wurde. Auf SQL-Ebene würden mir da Möglichkeiten einfallen das zu ändern, aber ich glaube nicht, dass das von Django aus über den ORM geht.

Du könntest aber natürlich Einzelsuchen auf die betroffenen Felder absetzen.
csc
User
Beiträge: 23
Registriert: Montag 15. Juni 2009, 11:22

Ja, so arbeitet das "search_field" in django. Jedes weitere Attribut was ich search_field übergebe ist ein weiteres OR in der SQL suche.
Vorher sagen was genau er suchen soll geht schwer und sieht dann einfach nicht gut aus für den Benutzer. Wollte die kleine Searchbox auf der Seite jetzt nicht unnötig groß machen oder mit radiobuttons für eine spezielle Auswahlsuche versehen!
Nur den Wert aus den Tabellen den ich bekomme was hervorheben.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

csc hat geschrieben:Nur den Wert aus den Tabellen den ich bekomme was hervorheben.
Unter "hervorheben" verstehe ich jetzt mal die Darstellung in HTML.

Wenn es jetzt nur darum geht, den Suchbegriff in der Ausgabe anders darzustellen dann lauf doch einfach über die auszugebenden Daten und ersetze vor der Ausgabe dein Suchwort 'value' mit '<strong>value</strong>' - oder optimalerweise mit '<span class="searchvalue">value</span> wobei die Klasse searchvalue dann im CSS passend deklariert ist.
Antworten