![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 233 Pomógł: 9 Dołączył: 3.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
pojawił się u mnie problem z metodami formularza updateObject i isValid, czego za bardzo nie rozumiem, może powiem jak do tego doszło:
na początku stworzyłem moduł "test" jakiejś aplikacji i projektu zrobiłem niezbyt skomplikowaną schemę: Kod propel: test: id: text: varchar(20) z linii poleceń poszło: Kod symfony propel:build-all symfony propel:build-forms wrzuciłem do bazy jeden wiersz przez phpmyadmin w polu text miał "asdf" do tego tak wygląda actions.class.php w module:
a w szablonie jest najprostsze wyświetlenie formularza wzięte żywcem z manuala... Kod <form action="<?php echo url_for('test/index') ?>" method="post"> <table> <?php echo $form ?> <tr> <td colspan="2"> <input type="submit" /> </td> </tr> </table> </form> okazuję się że po otworzeniu strony /frontend_dev.php/test i przyciśnięciu przycisku Wyślij otrzymujemy błąd o nijakiej treści "[sfValidatorErrorSchema]" oprócz tego symfony nie wypluło nic wiecej prócz ścieżek nie bardzo wiem na czym polega błąd ciekawa rzecz również ujawnia się gdy zamiast całego if-a wstawimy var_dump($this->form->isValid()); okazuję się że na ekranie dostajemy false... mimo że wpis jest całkiem poprawny więc formularz stworzony na podstawie wpisu też powinien czy ktoś jest mi w stanie wytłumaczyć na czym polega problem? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 233 Pomógł: 9 Dołączył: 3.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
no chyba rzeczywiście nie rozumiem
Cytat A czym chcesz zupdejtować ten obiekt, jeśli nie podajesz odpowiednich danych do formularza? Nie rozumiem co masz na myśli? wiem że można zbindować ale wydaje mi się że metoda updateObject po coś jest... i służy ona do odseparowania się od dbania o to skąd formularz ma brać dane którym ma zostać update'owany formularz z propel:build-forms sam generuję nazwy pól i jest świadomy odtwarzania zależności formularz <-> model stąd wydaje mi się iż nowe formularze będą bardziej naciskać na updateObject tylko nie bardzo rozumiem czemu to nie działa zauważyłem że kluczem jest właściwość isBound, gdyż metoda isValid klasy sfForm opiera się na niej bezpośrednio wpływając na to czy wyjątek o którym wspomniałem zostanie wypluty czy nie przez symfony
tylko zupełnie nie rozumiem znaczenia tej właściwości PS. ten post jest moimi przypuszczeniami (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował zimi 4.10.2008, 15:11:28 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 23:45 |