2016-11-25 1 views
0

Я пытаюсь выполнить следующие действия: http://docs.doctrine-project.org/projects/doctrine1/en/latest/en/manual/hierarchical-data.htmlПытался загрузить класс «Doctrine_Core»

Пожалуйста, поправьте меня, если я ошибаюсь. Во-первых, я создал этот класс в AppBundle/Модель маршрута:

namespace AppBundle\Model; 


class Item extends Doctrine_Record 
{ 
    public function setTableDefinition() 
    { 
     $this->hasColumn('name', 'string', 255); 
    } 

    public function setUp() 
    { 
     $this->actAs('NestedSet'); 
    } 
} 

А потом использовать его в контроллере, как это:

$treeObject = Doctrine_Core::getTable('Category')->getTree(); 

У меня есть два вопроса: - Где у меня есть для определения таблицы Category и как - с помощью этого предыдущего кода я столкнулся с этой ошибкой: Пытался загрузить класс «Doctrine_Core» из пространства имен «AppBundle \ Controller \ Admin

Любая идея, пожалуйста, спасибо

?

ответ

1

У доктрины есть комплект для Symfony, который позволяет хранить все конфигурационные данные в YML. https://symfony.com/doc/current/bundles/StofDoctrineExtensionsBundle/index.html - у него есть «Расширение дерева», и это именно то, что вы ищете.

+0

Я скопировал пример категории, и теперь он выдает сообщение о проверке ... «Столбец« lft »не может быть пустым». Знаете ли вы, где это неправильно? Спасибо – jmunozco

+0

, так что у вас есть сейчас работа или нет? :) – mmmm

1

Классы Doctrine_Record и Doctrine_Core являются частью Doctrine в 1.x версии, Symfony2 использует Doctrine 2.x которая полностью отличается от 1.x версии. Например, Doctrine 2.x не использует подход Active Record, и это то, что вы пытаетесь использовать. В Doctrine 2 классов модели (Entities) не распространяются любого класса

Проверить этот кусок doc как использовать Doctrine2 в Symfony2