Ссылка на файл в строке в Doctrine - PullRequest
0 голосов
/ 26 января 2010

Я хочу связать физический файл со строкой в ​​таблице. Я намерен использовать возможности базы данных, чтобы удалить файлы, на которые есть ссылки в таблице. Например:

$ o = Doctrine :: getTable ('Document') -> find (12); $ O-> Удалить ();

Этот код удаляет строку в таблице, я хочу удалить гипотетический файл, указанный в $ o-> file_location. Я пытаюсь это с событиями (preDelete, postDelete, preUpdate, postUpdate), но я не могу сделать это работает.

Ответы [ 2 ]

2 голосов
/ 26 января 2010

В вашей модели документа я бы добавил что-то вроде этого:

class Document extends BaseDocument
{
    ...

    public function preDelete($event)
    {
        unlink($this->file_location);
    }

    ...
}

Кроме того, Doctrine имеет класс Doctrine_Search_Files , который индексирует (каталоги) файлы для поиска. Может быть, вы можете получить вдохновение там?

0 голосов
/ 26 января 2010

вы не можете просто отсоединить файл?

как это:

$o = Doctrine::getTable('Document')->find(12);
if(unlink($o->file_location))
{
    $o->delete();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...