slick2.0:如何将TableQuery对象传输到模板中?

时间:2014-03-21 12:49:31

标签: scala playframework playframework-2.2 slick

我是浮油的新学徒。

我制作了一个模特:

class Page(tag:Tag) extends Table[(Long,Int, String,String,String, Long, Long, String)](tag, "Page"){
  def id=column[Long]("ID", O.PrimaryKey)
  def subid=column[Int]("subject")
  def title=column[String]("Title", O.NotNull)
  def describe=column[String]("Describe")
  def profile=column[String]("Profile")
  def icon=column[Long]("icon")
  def resource=column[Long]("Picture")
  def url=column[String]("Out_link")
  def * = (id, subid,title, describe, profile,icon, resource, url)
}
val page=TableQuery[Page]

我想将变量页面传输到我的playframework2.2 page_list.scala.html,我不知道如何将变量传输到playframwork模板,'页面'是对象不是类

(sublist: TableQuery)(implicit request: Request[Any])
<html>
<head>
</head>
<body>
<div class="container">
 @for(eachsubject <- sublist){
           .....         
                    }
<div class="element">
</div>
</div>
</body>
</html>

我只想获取TableQuery中的每个元素,然后使用另一个模板来呈现它们。 ps:任何人都知道一些更复杂的例子与slick2.0和playframework官方给出的那么天真,甚至不传输TableQuery元素。

1 个答案:

答案 0 :(得分:0)

您可能只想传输查询的结果,而不是TableQuery对象,它只是类似于获取while表的查询。要获得结果,请致电

page.run,然后是Seq[(Long,Int, String,String,String, Long, Long, String)]类型。

实际上可能比你需要的更高级,但绝对可以传递TableQuery对象,但你可能想要传递Query,这是一种超级类型。请参阅2013年12月13日在SCALA EXCHANGE http://slick.typesafe.com/docs/处获取的数据库应用程序模式。