Ci sono i miei percorsi. Il secondo è commentato.Play Framework. Itinerari. Errore: "argomenti non sufficienti per il metodo in ..."
GET /assets/*file controllers.Assets.at(path="/public", file)
#GET /partials/*file controllers.Assets.at(path="/public/partials", file)
(Quello che voglio è: a fare il mio file html che si trovano all'interno della cartella "/public/partials"
siano disponibili attraverso il web, così come è fatto per assets
)
Appena I decommentare 2a linea - otterrà errori dovuti a questa linea (dal mio index.scala.html
):
<link rel="stylesheet" media="screen" href="@routes.Assets.at("stylesheets/main.css")">
errore è come qui:
not enough arguments for method at: (path: String, file: String)play.api.mvc.Call. Unspecified value parameter file.
D: Cosa c'è che non va?
UPDATE:
Un'altra parole: Voglio fare il mio URL più breve prevedendo che la mappatura. Altrimenti devo usare questo url: 'assets/partials/welcome.html'
invece di quello (che vorrei usare): 'partials/welcome.html'
.
Solo un'altra mappatura che renderebbe i miei url più brevi.
Ha senso quando ho bisogno di raggiungere quelli dalla parte JS, è come avere due applicazioni in una (1.play one, 2. js one), anche lì routing, due radici. Per JS presumo di essere già in/pubblico (o in risorse) - questa è una radice per l'app js.
E mi chiedo perché non funziona.
lo so, ma voglio fare il mio url più breve prevedendo che la mappatura. Altrimenti devo usare questo URL: 'attività/parziali/welcome.html' invece di quello: 'partial/welcome.html'. Solo un'altra mappatura che renderebbe i miei url più brevi. E ha senso quando ho bisogno di raggiungere coloro da JS parte, è come avere due applicazioni in una sola (1.play uno, 2. js uno), anche lì itinerari, due radici. Per JS quella che sto supponendo che io sono già a/pubblica (o in attività) - questa è una radice per un'applicazione js. E mi sono chiesto perché non funziona. – ses
Forse questo è già chiaro a voi, ma se si definisce una seconda mappatura per l'azione Assets.at allora avete bisogno di specificare il parametro di percorso quando si utilizza il router inverso. Questo perché il percorso è ora ambiguo. Quindi, invece di essere in grado di usare @ routes.Assets.at ("stylesheets/main.css") devi usare @ routes.Assets.at ("/ public", "stylesheets/main.css") – mantithetical
Sì. Io vedo. Farei meglio ad usare una definizione di rotta e 'soffrire' di avere una parola in più in url che mettere un altro parametro in ogni URL di risorsa. – ses