2016-11-14 7 views
0

Я только начал работать с Play Framework в Scala для школьного проекта, поэтому я еще не знаю много о платформе. Я пытаюсь подключить свой проект к PostgreSql, используя slick, но он не работает. Я сделал то же самое, что и на веб-сайте Play, и во многих учебниках, но он не работает.Подключение к базе данных PlaySlick для PostgreSQL

Это мой DB конфигурации в файле application.conf

slick.dbs.default.driver="slick.driver.PostgresDriver$" 
    slick.dbs.default.db.driver="org.postgresql.Driver" 
    slick.dbs.default.db.url="jdbc:postgresql://localhost:5432/IRProject" 
    slick.dbs.default.db.user="<my_username>" 
    slick.dbs.default.db.password="<my_password>" 

1.sql файл в Conf/эволюций/по умолчанию

# --- !Ups 

CREATE TABLE Document(
    id SERIAL PRIMARY KEY NOT NULL, 
    title VARCHAR(500), 
    date TIMESTAMP WITH TIME ZONE, 
    url VARCHAR(1000) NOT NULL , 
    path VARCHAR(1000) NOT NULL , 
    summary VARCHAR(5000) NOT NULL 

); 


# --- !Downs 

DROP TABLE IF EXISTS Document; 

Мои зависимости:

"org.webjars" % "jquery" % "2.1.3", 
    "com.typesafe.play" %% "play-slick" % "1.1.1", 
    "com.typesafe.play" %% "play-slick-evolutions" % "1.1.1", 
    "postgresql" % "postgresql" % "9.1-901.jdbc4" 

Когда Я запускаю с помощью активатора, я не вижу никаких журналов о соединении с БД или вообще о какой-либо ошибке. Приложение просто запускается, но без каких-либо таблиц в базе данных.

Кто-нибудь знает причину этого?

ответ

0

Если кто-нибудь столкнется с этой проблемой, это решения, которые я нашел.

  • Я разместил конфигурацию dick в блоке db {} внутри конфигурационного файла, но это неправильно, оно должно быть вне непосредственно внутри файла конфигурации.
  • мне нужно добавить тестовый запрос, который может быть использован для проверки соединения например

    slick.dbs.default.db.connectionTestQuery = «SELECT TRUE»

После этого он работал.