Grails: dbconsole не показывает классы моего домена - PullRequest
7 голосов
/ 14 февраля 2012

В этом прекрасном блоге написано, что в dbconsole я должен видеть маленькие значки слева для моих таблиц, например, как он видит "КНИГУ". http://www.redtoad.ca/ataylor/2011/11/h2-database-console-in-grails-2/

Я использую STS и Grails 2.0, и я делаю приложение с несколькими классами домена (я могу зайти в контроллеры и посмотреть списки и прочее), но dbconsole не показывает никаких классов домена. Просто идет прямо в INFORMATION_SCHEMA.

Где мои классы доменов? Я могу видеть списки и использовать .findBy и прочее !!

Ответы [ 2 ]

19 голосов
/ 14 февраля 2012

Вам необходимо изменить URL-адрес на то, что указано в вашем DataSource.groovy

URL-адрес должен быть изменен на этом первом экране.enter image description here

1 голос
/ 15 июля 2013

Спасибо, Майки!У меня такая же проблема!Действительно, посмотрите на

grails-app/conf/DataSource.groovy

По крайней мере, в моем случае URL JDBC может быть установлен в jdbc: h2: mem: devDb для базы данных разработки, jdbc:h2:mem:testDb для тестовой базы данных и jdbc:h2:mem:prodDb дляпроизводственная база данных.

Консоль не может знать, какой из них вы предпочитаете, поэтому по умолчанию она проверяется.Кроме того, если вы нажмете «URL JDBC» в режиме dbconsole в браузере, он покажет вам несколько советов.В частности, поясняется, что «URL-адрес jdbc: h2: ~ / test означает, что база данных хранится в домашнем каталоге пользователя в файлах, начинающихся с« test »».Действительно, в моем домашнем каталоге у меня теперь есть test.h2.db, test.lock.db и test.trace.db.Это также объясняет, почему данные не сохраняются по умолчанию.Разве вы не замечали, что при настройке по умолчанию каждый раз, когда вы перезапускаете Grails, вам нужно заново создавать все объекты?Ну, это из-за части ": mem:" в URL JDBC.

Это значение по умолчанию, вероятно, не имеет ничего общего с Grails;Я предполагаю, что H2 просто создает тестовую базу данных в вашем домашнем каталоге по умолчанию, если не указано иное.Я также предположил бы, что у вас может быть много разных баз данных в сложной производственной среде, и именно поэтому Grails не пытается угадать, чего вы хотите.

Также см. официальную документацию H2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...