Я использую Symfony 1.3.2 с Propel ORM в Ubuntu 9.10.
Я разработал форму, которая динамически заполняет выбранный виджет городами в выбранной стране, используя AJAX.
Перед сохранением данных, введенных в форму, я проверяю форму. Если проверка не пройдена, форма представляется пользователю для исправления. Однако, поскольку список стран генерируется динамически, в форме, представленной для исправления, не выбран правильный город (он пуст, поскольку виджет страны еще не изменился).
Это неудобно для пользователя, потому что это означает, что он должен выбрать ДРУГУЮ страну (чтобы сработало событие изменения), а затем вернуться обратно к исходной стране, которую он выбрал, и, наконец, выбрать город, который он выбрал последним.
Все это навязывается пользователю, поскольку другое (возможно, не связанное) поле не прошло проверку.
Я пытался $ form-> getValue ('widget_name'), вызываемый сразу после $ form-> bind (), но, похоже, (на самом деле, IIRC, если форма не проходит проверку, все значения сбрасываются на ноль) - так что не работает.
В настоящее время я пытаюсь выполнить неприятный хак, который включает использование прямого доступа к входным (т.е. испорченным) данным через $ _POST и установку их во флэш-переменную - но я чувствую, что это очень неприятный хак)
То, что я пытаюсь сделать, - это сценарий общего использования - есть ли лучший способ сделать это, чем взламывать $ _POST и т. Д.?