Пользовательский маршрут для доктрины nestedSet - PullRequest
0 голосов
/ 19 мая 2011

Мне удалось успешно отобразить все узлы в красивом дереве на веб-интерфейсе, но проблема связана с отображением реальных страниц.

Итак, у меня есть 2 родителя, Dog и Cat, и вместе с ними у меня есть несколько дочерних узлов.

Я создал модуль внешнего интерфейса с именем animals, в котором есть пустой файл indexSuccess.php.

В моем actions.class.php файле у меня есть:

$this->animal = AnimalTable::getAnimalBySlug($request->getParameter('slug'));

В моей модели животных

    public static function getAnimalBySlug($slug)
    {
        $q = Doctrine_Query::create()
          ->from('Animal a')
          ->where("a.slug = ?", $slug);

       return $q->fetchOne();
    }

У меня есть очень простой маршрут:

animal:
  url:   /:slug
  param: { module: animals, action: index }

Итак, вы видите, что это будет нормально работать для /dog (родительский узел), но не для /dog/sheep-dog

Я не уверен, что мне нужно обновить getAnimalBySlug и маршрут, чтобы использовать динамический маршрут в терминах вложенного набора.

Спасибо

1 Ответ

0 голосов
/ 19 мая 2011

Попробуйте изменить маршрут на:

animal:
  url:   /:slug
  param: { module: animals, action: index }
  requirements: { slug: '.*?' }
...