Rails - доступ к методам класса модели из модели ActiveRecord - PullRequest
0 голосов
/ 03 июня 2010

У меня есть простая автономная модель, которая не наследуется от ActiveRecord или чего-либо еще, называемая SmsSender. Как следует из названия, он доставляет текстовые сообщения на шлюз SMS.

У меня также есть модель ActiveRecord с именем SmsMessage, в которой есть метод экземпляра с именем deliver:

def deliver
  SmsSender.deliver_message(self)
  self.update_attributes :status => "Sent"
end

Выше возвращается uninitialized constant SmsSender. Я уверен, что это очень просто, но как я могу получить доступ к классу SmsSender из моей модели?

1 Ответ

1 голос
/ 03 июня 2010

Mabe ruby ​​ищет SmsSender внутри текущего класса.
Попробуйте использовать (глобальный) оператор разрешения области действия :: так:

def deliver
  ::SmsSender.deliver_message(self)
  self.update_attributes :status => "Sent"
end

Также убедитесь, что файл для SmsSender включен (через одно из: require, load и т.д.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...