Ich habe eine RouteJessod, Howto typsichere Verbindung von JSON-Daten in Javascript/Julius
/notes/#NoteId NoteR GET
Von einer anderen Seite erzeugen, möchte ich es verbinden. Als „klassische“ Weiler verwenden, ist es einfach:
<a [email protected]{NoteR $ entityKey note}>notetitle
ich meine Seite sein wollen dynamischer und bekommen JSON-Daten, die die Notiz-Informationen enthält und Note-ID. Wie erzeuge ich korrekte und typesafe-Links?
Ich habe bereits diesen Code in einer .julius
Datei, aber es kompiliert nicht, weil es eine "NoteId" erwartet. Ich sollte irgendwo in die URL-Interpolation einfügen @ {..} ... Irgendwelche Hinweise, wie man das macht?
function loadnotes() {
var list = $("#results");
jQuery.getJSON("@{NotesR}",
function(o){
$.each(o, function (i, obj) {
$('<a [email protected]{NoteR}/>' + obj.title + '</a>').appendTo(list);
})});
}
window.onload = loadnotes;
EDIT:
Ich habe dies in Model.hs
:
instance ToJSON (Entity Note) where
toJSON (Entity nid (Note title content created_at updated_at userId)) = object
[ "id" .= nid
, "title" .= title
, "content" .= (unTextarea content)
, "created_at" .= created_at
, "updated_at" .= updated_at
, "userId" .= userId ]
ich mit Javascript nicht gut bin, aber wie ich es sehe, ist der 'note' Wert im Weiler Beispiel ein typisierte Haskell-Wert. Aber "obj" im Julius-Code ist ein untypisiertes JavaScript-Objekt. Wäre es sinnvoll, wenn etwas ohne einen bekannten Typ Teil einer typsicheren URL wäre? – Tarrasch