Я использую Play Framework (1.2.4). Я создал объект UserAccount
, развернул его в Heroku. Работал отлично. Затем я добавил поле isAdmin
в класс UserAccount
, развернул его локально, и он работал нормально (но я использую БД в памяти), затем развернул его на Heroku, и теперь я получаю следующее исключение :
2011-12-23T09:03:35+00:00 app[web.1]: play.exceptions.JavaExecutionException: org.hibernate.exception.SQLGrammarException: could not load an entity: [models.UserAccount#2]
2011-12-23T09:03:35+00:00 app[web.1]: PersistenceException occured : org.hibernate.exception.SQLGrammarException: could not load an entity: [models.UserAccount#2]
...
2011-12-23T09:03:35+00:00 app[web.1]: Caused by: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not load an entity: [models.UserAccount#2]
2011-12-23T09:03:35+00:00 app[web.1]: Caused by: org.hibernate.exception.SQLGrammarException: could not load an entity: [models.UserAccount#2]
2011-12-23T09:03:35+00:00 app[web.1]: Caused by: org.postgresql.util.PSQLException: ERROR: column useraccoun0_.isadmin does not exist
...
Я искал, как выяснить, как выполнять обновление БД, и на сайте Play сказано, что Hibernate должен справиться с этим для меня.
Вот мои свойства БД:
%prod.db=${DATABASE_URL}
%prod.jpa.dialect=org.hibernate.dialect.PostgreSQLDialect
%prod.jpa.ddl=update
Что я делаю не так? Спасибо за помощь.