propel: data-dump выводит только те строки, где само-ссылка fk равна нулю - как обойти? - PullRequest
2 голосов
/ 29 августа 2011

Использую Symfony 1.4 и Propel 1.6. У меня есть таблица, представляющая объект, где одна запись может относиться к другой записи в таблице (Подумайте исходящие / входящие маршруты). Ключ второй половины пары (например, входящий маршрут) хранится в первом экземпляре (исходящий).

Этот проект находится в разработке. Я пытаюсь сделать дамп данных. То, что происходит, - то, что я не получаю все выходные данные записей от MySQL. Я получу вывод только в том случае, если для столбца с самоссылкой указано значение NULL.

Как мне сказать propel вывести целочисленное значение, хранящееся в этом связанном столбце?

Примечание: таблица на самом деле не называется Route, это просто имя заполнителя для реального объекта (не моделирует ссылки или объект маршрутизации и не вызывает таких проблем с именами)

Маршрут:

id: ~
linked_Route_id: 
  type: INTEGER
  foreignTable: Route
  foreignReference: id
  onDelete: setnull
  fkSkipSql: true  #I have tried builds with and without this option.

..... Спасибо за любые рекомендации от кого-то, кто должен был обойти проблему прежде.

1 Ответ

0 голосов
/ 13 декабря 2011

Я думаю, что вы не можете достичь того, чего хотите, и это больше связано с плагином Propel для Symfony, чем с самим Propel.Задачи дампа / загрузки данных имеют особый процесс для Symfony, поэтому вы не будете получать необработанные данные, а больше в формате, совместимом с Symfony.

Вы можете получить то, что хотите, используя командную строку Propel: http://www.propelorm.org/cookbook/working-with-existing-databases.html#dumping_data_to_xml но это может быть не идеально.

В противном случае вы можете использовать команду mysqldump.

...