Play / Slick / SQLite演变不起作用

问题描述 投票:1回答:1

我在终端的SQLite中创建了一个这样的Ubuntu数据库:

$ sqlite users.db

然后我将users.db文件移动到projectDir/conf/application.conf。 后来我写了一个进化但是当我通过users.db查看我的数据库时它没有应用到我的DBeaver数据库。

这是我的application.conf文件

play.http.secret.key = "changeme"

play.i18n {
  langs = [ "en" ]

}
play.filters {
  enabled += filters.ExampleFilter

}

play.evolutions.db.default {
  enabled = true
  autoApply = true
  autoApplyDowns = true
}

slick.dbs.default {
  profile = "slick.jdbc.SQLiteProfile$"
  driver = "slick.driver.SQLiteDriver$"
  db.driver = "org.sqlite.JDBC"
  db.url = "jdbc:sqlite:/home/saad/play-scala-starter-example/conf/users.db"
}

play.assets {
  path = "/public"
  urlPrefix = "/assets"
}

这是我的build.sbt

name := """play-scala-starter-example"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayScala)

resolvers += Resolver.sonatypeRepo("snapshots")

scalaVersion := "2.12.7"

crossScalaVersions := Seq("2.11.12", "2.12.7")

libraryDependencies += guice
libraryDependencies += "org.scalatestplus.play" %% "scalatestplus-play" % "3.1.2" % Test
libraryDependencies += "com.typesafe.slick" %% "slick" % "3.2.0"
libraryDependencies += "com.typesafe.slick" %% "slick-codegen" % "3.2.3"

libraryDependencies += evolutions
libraryDependencies ++= Seq(
  "com.typesafe.play" %% "play-slick" % "3.0.0",
  "com.typesafe.play" %% "play-slick-evolutions" % "3.0.0"
)
libraryDependencies ++= Seq(
  cache,
  javaWs,
  "org.xerial" % "sqlite-jdbc" % "3.23.1"
)

这是我的1.sql文件,我测试过的代码没有错误。

# --- !Ups

CREATE TABLE IF NOT EXISTS Users(
ID INTEGER PRIMARY KEY AUTOINCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255) NOT NULL,
Password varchar(255) NOT NULL,
Email varchar(255) NOT NULL UNIQUE,
Authenticated boolean
);

INSERT INTO Users(LastName, FirstName, Password, Email, Authenticated) VALUES ('Saad', 'Ali', 'spadsdditcom', 'asdasdasd', 1);

# --- !Downs

DROP TABLE IF EXISTS Users

在我做sbt run之后,index页面打开并且没有错误,但是从DBeaver看不到进化。

我的问题是,我做错了什么?

sqlite playframework slick
1个回答
1
投票

我想通了,我把1.sql放在conf/dafault.evolution而不是conf/dafault/evolution。 愚蠢的错误,但是。

© www.soinside.com 2019 - 2024. All rights reserved.