Схема базы данных Zend_Queue - PullRequest
1 голос
/ 22 июня 2011

Я использую Zend_Queue, чтобы ставить в очередь и отправлять электронные письма (http://framework.zend.com/manual/en/zend.queue.adapters.html)

Есть ли способ изменить имена таблиц Zend_Queue_Adapter_Db по умолчанию? По умолчанию имена таблиц - это «очередь» и «сообщение», что немного сбивает с толку, и я хотел бы назвать их очередями и queues_messages.

1 Ответ

6 голосов
/ 22 июня 2011

Эти имена таблиц, по-видимому, жестко закодированы как значения свойств по умолчанию без встроенных мутаторов, но вы, вероятно, можете переопределить Zend_Queue_Adapter_Db, чтобы сделать ставку.Этот код не проверен, но что-то вроде следующего:

class My_Queue_Adapter_Db extends Zend_Queue_Adapter_Db
{
    public function __construct($options, Zend_Queue $queue = null)
    {
        parent::__construct($options, $queue);
        if (isset($options['queueTableName']) {
            $this->_queueTable->setOptions(
                array(Zend_Db_Table_Abstract::NAME => $options['queueTableName'])
            );
        }
    }
}

Затем просто передайте свойство queueTableName конструктору.Те же принципы применяются к свойству _messageTable.

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