Domanda
Sto cercando di modificare il boot.scala in ascensore e in esecuzione in un errore di divertente. Questo è quello che ho attualmente:
val entries = Menu(Loc("Home", List("index"), "Home")) ::
Menu(Loc("StudentLogin", List("studentlogin"), "Student Login")) ::
Menu(Loc("ProviderLogin", List("providerlogin"), "Provider Login"))
LiftRules.setSiteMap(SiteMap(entries :_*))
ottengo questo errore:
Boot.scala: 29: errore: il valore non è :: un membro di net.liftweb.sitemap.Menu Menu (Loc ( "StudentLogin", List ( "studentlogin"), "Student Login ")) ::
tutte le idee su quello che potrebbe essere sbagliato?
Grazie.
Soluzione
Sembra che si sta cercando di costruire una lista con i comfort senza avere un elenco vuoto alla fine. Prova a modificare la
val entries = Menu(Loc("Home", List("index"), "Home")) ::
Menu(Loc("StudentLogin", List("studentlogin"), "Student Login")) ::
Menu(Loc("ProviderLogin", List("providerlogin"), "Provider Login")) ::
Nil
LiftRules.setSiteMap(SiteMap(entries :_*))
Altri suggerimenti
Si prega di dare un'occhiata alla pagina wiki Sitemap pure: http: // liftweb .assembla.com / wiki / mostra / liftweb / Mappa del sito
La nuova e migliorata la sintassi Sitemap è:
def siteMap() = SiteMap(
Menu(S ? "Home") / "index",
Menu(S ? "About") / "about" / "index" submenus (
Menu(S ? "Management") / "about" / "management",
Menu(S ? "Goals") / "about" / "goals"),
Menu("directions", S ? "Directions") / "directions" >> Hidden,
Menu(S ? "Admin") / "admin" / "index" >> If(loggedIn_?, "You must be logged in"))
Non si utilizza l'operatore :: potrebbe essere più leggibile:
val entries = List(Menu(Loc("Home",
List("index"), "Home")),
Menu(Loc("StudentLogin",
List("studentlogin"), "Student Login")),
Menu(Loc("ProviderLogin",
List("providerlogin"), "Provider Login")))