2010-04-06 4 views
1

Мое приложение отправляет сообщения в группы клиентов. Я отправляю сообщение каждому клиенту в цикле.Rails custom db table

Я использую 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 

Я должен хранить информацию успеха для каждого клиента в цикле так и в случае ошибки я знаю, где продолжить. Идея состоит в том, чтобы сохранить идентификатор клиента в таблице X, когда сообщение успешно отправлено. Если бы я сделал это с PHP, я бы контролировал это вручную (новая таблица db для хранения идентификаторов клиентов). Как бы вы это делали в Ruby on Rails? Мне действительно нужна модель для этого?

ответ

1

Вы можете получить доступ к базе данных непосредственно в рельсах. Перейдите и выполните миграцию и создайте новую таблицу. Существует много способов запуска запросов непосредственно в рельсах. Вы можете запустить их так:

ActiveRecord :: Base.connection.select_one ('SELECT COUNT (*) FROM туЬаЫе') или ActiveRecord :: Base.connection.execute ('SELECT * FROM туЬаЫе')

Взгляните на подключение к ActiveRecord :: Base для различных способов сделать это.

Если вам нужно что-то еще, вы можете взглянуть на драгоценный камень Sequel.