2013-03-10 4 views
2

Я пытаюсь использовать clojure kORMa с compojure, webapp здесь nepleaks.Не можете начать работу с clojure kORMa

Сначала я добавил Корме зависимость

[korma "0.3.0-RC4"] 

lein deps работы охлаждаться, затем создал src/hotel/conf/datasource.clj, который выглядит следующим образом:

(ns hotel.conf.datasource) 
    (use [korma.db]) 
    (use [korma.core]) 
) 

(defdb db (mysql {:db "nepleaks" 
        :user "root" 
        :password "mysql55"})) 

(defentity users) 

lein ring server ни бросать никаких исключений ни создавать объект базы данных.

Я что-то упустил? Нужна ли мне дополнительная настройка?

ответ

5

Я понимаю, что Korma не создает базу данных и таблицы базы данных для вас, поэтому вам необходимо создать их вручную.

+0

Ухх .. не знаю, что.Только что (затворничество) на самом деле делает? Просто отображение объектов? Хотелось бы спросить, помогает ли https://github.com/budu/lobos создавать таблицы базы данных, поскольку он описывает себя как «всеобъемлющий DSL DSL». – prayagupd

+1

@PrayagUpd Да, он просто отображает объекты. Вы можете использовать Lobos или lein-dbmaintain (https://github.com/mysema/lein-dbmaintain), который является оберткой для DbMaintain. Отказ от ответственности: lein-dbmaintain поддерживается компанией, в которой я работаю. – ponzao

+0

Отлично, я начинаю работать на лобо :). Если у вас возникнут какие-либо проблемы с этим, тогда будет думать о lein-dbmaintain. – prayagupd

1

В духе примера, который стоит 1000 слов, я бы рекомендовал проверить веб-фреймворк luminus clojure. См. http://www.luminusweb.net/. Эта структура создает множество действительно полезных библиотек с очень простым примером использования, включая korma, ragtime, ring, compojure и некоторые другие интересные библиотеки. Шаблоны по умолчанию показывают вам много хороших способов использования этих библиотек и их интеграции. Затем вы можете выбрать нужные вам биты. Все, что вам нужно сделать, чтобы начать работать в

lein new luminus <your project> +mysql 

Веб-сайт имеет хорошую документацию и код очень чистый и легко понять. Экономит часы, когда вы хотите встать и работать с новой библиотекой, с которой вы все еще соглашаетесь.