【问题标题】:Couldn't get started with clojure kORMa无法开始使用 clojure kORMa
【发布时间】:2013-02-25 13:03:53
【问题描述】:

我正在尝试将 clojure kORMa 与 compojure 一起使用,webapp 在这里nepleaks

首先我添加了 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 既不抛出任何异常也不创建数据库实体。

我是否遗漏了什么?我需要更多配置吗?

【问题讨论】:

    标签: mysql clojure compojure korma


    【解决方案1】:

    我的理解是Korma不会为你创建数据库和数据库表,所以你需要事先手动创建。

    【讨论】:

    • 呃..不知道。那么(防御)实际上是做什么的?只是映射实体?想问一下github.com/budu/lobos 是否有助于创建数据库表,因为它将自己描述为“一个全面的 DDL DSL”。
    • @PrayagUpd 是的,它只是映射实体。您可以使用 Lobos 或 lein-dbmaintain (github.com/mysema/lein-dbmaintain),它是 DbMaintain 的包装器。免责声明:lein-dbmaintain 由我工作的公司维护。
    • 太好了,我开始研究 lobo :)。如果有任何问题,那么会考虑 lein-dbmaintain。
    【解决方案2】:

    本着一个值得 1000 字的示例的精神,我建议查看 luminus clojure Web 框架。请参阅http://www.luminusweb.net/ 这个框架设置了许多非常有用的库,包括非常基本的示例使用,包括 korma、ragtime、ring、compojure 和其他一些不错的库。默认模板向您展示了许多使用这些库的好方法以及如何集成它们。然后你可以选择你想要的位。您需要做的就是开始运行

    lein new luminus <your project> +mysql
    

    该网站有很好的文档,代码非常干净且易于理解。在想要启动并运行您仍在接受的新库时节省数小时。

    【讨论】:

      【解决方案3】:

      您需要lein ragtime plugin 管理数据库。

      【讨论】:

      • 不推荐使用仅链接的答案
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-27
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-22
      相关资源
      最近更新 更多