2 Stimmen

Rails 3 - Erstellen einer JSON-Antwort zur Anzeige von Suchergebnissen

Ich arbeite, um Rails 3 mit einer JSON-Anfrage, die dann die App-Ausgabe der Suchergebnisse mit dem jQuery-Vorlage-Plugin lassen zu haben...

Damit das Plugin funktionieren kann, benötigt es diese Art von Struktur:

[
 { title: "The Red Violin", url: "/adadad/123/ads", desc: "blah yada" },
 { title: "Eyes Wide Shut", url: "/adadad/123/ads", desc: "blah yada" },
 { title: "The Inheritance", url: "/adadad/123/ads", desc: "blah yada" }
]

In meinem Rails 3 Controller erhalte ich die Suchergebnisse, die als @searchresults zurückkommen, die entweder 0, 1 oder mehr Objekte der gesuchten Klasse enthalten.

Meine Frage ist, wie zu konvertieren, dass die oben genannten Struktur (JSON) ...

Gracias.

Update Vergessen zu erwähnen. Die Front-End-Suchseite muss für mehrere Modelle funktionieren, die verschiedene Datenbankspalten haben. Das ist, warum ich möchte lernen, wie man das oben zu konvertieren, um die Ergebnisse zu normalisieren, und senden Sie zurück an den Benutzer.

2voto

mdrozdziel Punkte 5488

Ich bin mir nicht sicher, was hier das Problem ist, da Sie immer ".to_json" für jede Instanz oder Sammlung von Instanzen oder Hash usw. aufrufen können.

Sie können .select verwenden, um die Anzahl der benötigten Felder zu begrenzen, z. B:

Object.select(:title, :url, :desc).to_json

Ich vermute, dass die @searchresults ActiveRecord::Relation ist, so können Sie wahrscheinlich verwenden:

@searchresults.select(:title, :url, :desc).to_json

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X