2014-12-05 11 views

Odpowiedz

8

JsPath jest podstawowym elementem budowy tworzenie odczytu/zapisu. JsPath reprezentuje lokalizację danych w strukturze JsValue. Można użyć obiektu JsPath (ścieżka główny) do określenia JsPath wystąpienie przez stosowanie, składnię podobną do przechodzącego JsValue:

import play.api.libs.json._ 

val json = { ... } 

// Simple path 
val latPath = JsPath \ "location" \ "lat" 

// Recursive path 
val namesPath = JsPath \\ "name" 

// Indexed path 
val firstResidentPath = (JsPath \ "residents")(0) 

Pakiet play.api.libs.json określa alias JsPath __ (podwójne podkreślenie). Można to wykorzystać, jeśli wolisz:

val longPath = __ \ „Location” \ „długi”

+0

Czy ten alias "__" nie jest już dostępny w wersji 2.6? Otrzymuję błąd Nie znaleziono nawet po zaimportowaniu 'play.api.libs.json._' – nir

4

jest import wartość z obiektu pakiet json:

package object json { 

    /** 
    * Alias for `JsPath` companion object 
    */ 
    val __ = JsPath 

} 
+0

wiesz, czy jest to po prostu grać nomenklaturę lub coś Scala, jak również? – reectrix

+1

Nic w języku, nawet zwykłe, tylko dwa podkreślenia tworzą ważny identyfikator (podczas gdy jedno podkreślenie jest słowem kluczowym) –