【问题标题】:Reconnect everytime to mysql with Grape每次都用 Grape 重新连接到 mysql
【发布时间】:2013-05-05 07:24:58
【问题描述】:

我是一名 ruby​​ 初学者,我有一个关于如何将 mysql 与葡萄一起使用的问题。

每次我想使用我的数据库时都必须致电Mysql.new(),还是有更好的方法来做到这一点?

我尝试在 initialize 中创建新的 class API < Grape::API,但它似乎不起作用...

有什么建议吗?

编辑:这是我所做的一些代码,效果很好,但我想通过尽可能不每次都连接到 sql 来改进这一点:

class API < Grape::API

  before do
   header "Access-Control-Allow-Origin", "*"
   @db_co = Mysql.new("localhost", "root", "toto", "youfight_userapp")
  end

 resource :users do

  get :toto do
   result = @db_co.query("SELECT username FROM users WHERE id = 104")
   result.fetch_row
  end

 end
end

【问题讨论】:

  • 如果您将实例变量添加到您的 API 类,它们并不总是以您期望在 Grape 中的方式访问。例如,您的所有路线都成为单独的 Grape::Endpoint 对象。我建议您在问题中粘贴一些代码,只是您尝试做的最小版本。

标签: mysql ruby database api grape


【解决方案1】:

我强烈建议您使用某种 ORM。当我们尝试按照您自己的方式编写我们的 API 时遇到了很多问题,最后我们切换到了 ORM。我们选择datamapper,但还有很多其他选择。例如sequel 似乎很可靠。

【讨论】:

    猜你喜欢
    • 2015-09-23
    • 2016-02-08
    • 1970-01-01
    • 2014-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-22
    • 1970-01-01
    相关资源
    最近更新 更多