【发布时间】:2014-01-13 17:35:16
【问题描述】:
我正在使用 Yesod 1.2 开发一个 Web 应用程序,而我正在使用 websockets。对 websocket 发出的请求需要查询我的数据库,并且要进行此查询,我知道它们必须在 PersistStore 实例中。据我所知,我不能使用runDB,因为websockets 请求处理程序不在Handler monad 中。相反,为此我可以使用类似于this 问题答案中的代码。
在脚手架站点中进入PersistStore monad 的最干净的方法是什么?我知道我可以用硬编码的连接字符串轻松地拍摄runSqlite 并完成它,但我认为这很难看。如果出于任何原因我想更改数据库引擎,我不想修改与数据库建立连接的每一段代码。
我正在寻找一种方法来使用脚手架站点在连接到数据库时已经为我做的事情,以免重复代码。
【问题讨论】: