2

リフトでboot.scalaを変更しようとしていますが、面白いエラーが発生します。これは私が現在持っているものです:

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 :_*))

このエラーが発生します:

Boot.scala:29:エラー:値:: net.liftweb.sitemap.Menu Menu(Loc( "StudentLogin"、List( "studentlogin")、 "Student Login"))::のメンバーではありません

私が間違っているかもしれないことについて何か考えはありますか?

ありがとう。

4

3 に答える 3

7

最後に空のリストがなくても、短所を使用してリストを作成しようとしているようです。代わりにこれを試してください

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 :_*))
于 2009-10-08T15:55:11.417 に答える
6

SiteMap wikiページもご覧ください:http://liftweb.assembla.com/wiki/show/liftweb/SiteMap

新しく改善された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"))
于 2010-06-18T05:33:34.063 に答える
1

::演算子を使用しない方が読みやすい場合があります:

val entries = List(Menu(Loc("Home", 
                        List("index"), "Home")),
                   Menu(Loc("StudentLogin", 
                        List("studentlogin"), "Student Login")),
                   Menu(Loc("ProviderLogin", 
                        List("providerlogin"), "Provider Login")))
于 2009-10-08T16:44:04.283 に答える