Rails自定义db表

时间:2010-04-06 19:53:20

标签: ruby-on-rails database-design activerecord

我的应用正在向客户群发送消息。我在循环中向每个客户端发送消息。

我正在使用3个ActiveRecord模型:

class Message < AbstractBase
  has_and_belongs_to_many :groups
end
class Client < ActiveRecord::Base
  has_and_belongs_to_many :groups
end
class Group < ActiveRecord::Base
  has_and_belongs_to_many :messages
  has_and_belongs_to_many :clients
end

我必须在循环中存储每个客户端的成功信息,以便在出错时我知道在哪里继续。这个想法是在成功发送消息时将客户端的ID保存在表X中。如果我用PHP做到了,我将手动控制(用于存储客户端ID的新数据库表)。 你会如何在Ruby on Rails中做到这一点?我真的需要一个模型吗?

1 个答案:

答案 0 :(得分:1)

您仍然可以直接在rails中访问数据库。继续进行迁移并创建新表。有许多方法可以直接在rails中运行查询。您可以像这样运行它们:

ActiveRecord :: Base.connection.select_one('SELECT COUNT(*)FROM mytable') 要么 ActiveRecord :: Base.connection.execute('SELECT * FROM mytable')

了解ActiveRecord :: Base上的连接,了解不同的方法。

如果你想要别的东西,你可以看看续集的宝石。