Pregunta
Estoy intentando modificar el boot.scala en elevación y en funcionamiento en un error de divertido. Esto es lo que tengo actualmente:
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 :_*))
Me sale este error:
Boot.scala: 29: error: Valor no es :: un miembro de net.liftweb.sitemap.Menu Menú (Loc ( "StudentLogin", la lista ( "studentlogin"), "Estudiante Login ")) ::
alguna idea acerca de lo que podría estar haciendo mal?
Gracias.
Solución
Parece que está tratando de construir una lista con los contras sin tener una lista vacía al final. Tal vez puedas probar
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 :_*))
Otros consejos
Por favor, eche un vistazo a la página wiki Sitemap también: http: // liftweb .assembla.com / wiki / mostrar / liftweb / Mapa del Sitio
El nuevo y mejorado sintaxis SiteMap es:
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"))
No se utiliza el operador :: podría ser más fácil de leer:
val entries = List(Menu(Loc("Home",
List("index"), "Home")),
Menu(Loc("StudentLogin",
List("studentlogin"), "Student Login")),
Menu(Loc("ProviderLogin",
List("providerlogin"), "Provider Login")))