Как получить комментарий к конкретной колонке с Doctrine ORM - PullRequest
1 голос
/ 05 ноября 2011

Есть ли способ получить комментарий столбца (например, из таблицы INFORMATION_SCHEMA.COLUMN в MySQL) из определенной таблицы без фактического «жесткого» запроса с Doctrine ORM?

Ответы [ 2 ]

2 голосов
/ 07 ноября 2011

Наконец я нашел способ.то, что я пытался сделать, это получить комментарий столбца из контроллера

//lets say we have a table named 'product'
//and we want to get the comment from the 'name' column
//first we get a list of columns from 'product'
$columns = $this->getDoctrine()->getEntityManager()->getConnection()->getSchemaManager()->listTableColumns('product');
//then we just access getComment function from the 'Column' class
//for the 'name' column:
echo $columns['name']->getComment();
0 голосов
/ 05 ноября 2011

Я сомневаюсь в этом, и то же самое можно сказать и о Propel. Оба используют PDO, и afaik нет независимого от базы данных способа сделать это.

Чтобы достичь этого, вы часто можете запрашивать столбцы таблицы, используя операторы SELECT для системных таблиц (конечно, Oracle и PostgreSQL позволяют это). Однако имена участвующих таблиц отличаются от одного поставщика к другому. Здесь - как получить имена столбцов, например, в PostgreSQL - получение комментариев, вероятно, будет очень похоже.

Вполне возможно, что ORM предложит то, что вы хотите, но основной реализацией будет подход, который я изложил выше. Возможно, вы могли бы запросить его в списке рассылки Doctrine?

...