Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony]EmbedForm
lukasz10
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 8.05.2010

Ostrzeżenie: (0%)
-----


Witam
Mam problem przy wykorzystaniu funkcji embedform podczas lączeniadwoch tabel zawierających pomiedzy soba relacje. Chcialbym zaznaczyc ze wszystko dziala poprawnie tzn tabele sa polaczene , dane dodaja sie do bazy tylko jest jeden mankament otoż majac np tabele ksiązki i tabele autorzy. Tabela ksiązki jest polaczona relacja z tabela autorzy, przy wypelnianu tabeli ksiazki mam polaczona tabele autorzy. Problem tkwi w tym ze chcialbym uzyskac to ze jezeli autor juz o takim nazwisko zostal wprowadzony do tabeli autorzy to zeby nie byl wpisywany poraz kolejny tylko zostalo pobierane jego id i przypisywane do danej ksiazki, o to moj kod:

  1. unset($this['autor'],);
  2.  
  3. $author = $this->getObject()->getAutorzyRelatedByAutor();
  4.  
  5. $criteria = new Criteria();
  6. $criteria->add(XXXPeer::NAZWISKO, ' tutaj nei wiem jak pobrac nazwisko autora ' , Criteria::ILIKE);
  7. $dosel = XXXPeer::doSelect($criteria);
  8.  
  9. if(is_null($author)&&$dosel==0)
  10. {
  11. $author = new Autorzy();
  12. $this->getObject()->setAutorzyRelatedByAutorId($author);
  13.  
  14. }
  15. else
  16. {
  17. foreach($dosel as $sel)
  18. {
  19. $this->getObject()->setAutorId($sel->getId());
  20. }
  21. }
  22. $this->embedForm('autor',new AutorzyForm($author));



prosze o jakies podpowiedzi

nikt nie mial takie problemu?questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif/

Ten post edytował lukasz10 21.05.2010, 11:12:49
Powód edycji: [strife]: Dodanie BB Code
Go to the top of the page
+Quote Post
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Zależy w jakim miejscu wstawiłeś swój kawałek kodu. Zobacz metodę sfForm::getValue.

Zamiast doSelect możesz zrobić doSelectOne wtedy nie musisz dawać pętli, bo od razu zwraca obiekt.
Go to the top of the page
+Quote Post
lukasz10
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 8.05.2010

Ostrzeżenie: (0%)
-----


Ten kod jest w klasie formularza tabeli ksiązki, więc przez sfform:getvalue raczej nie dostane sie do nazwiska autora, a co do selecta to masz racje
Go to the top of the page
+Quote Post
destroyerr
post
Post #4





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----


Skoro jest w formularzu ten kod (zakładam, że w odpowiedniej metodzie - bo jej dalej nie znamy) to dlaczego ma się nie dać? Jaki z tym problem?
Go to the top of the page
+Quote Post
lukasz10
post
Post #5





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 8.05.2010

Ostrzeżenie: (0%)
-----


tak jest w metodzie configure, a czemu sie nie da?? poniewaz chce siie dostac do pola ktorego nie mam w tym formie, jest tylko id tamtej tabeli, a z tego co sie orientuje to mortoda getvalue wymaga podania nazwy pola, ja to tak rozumie
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 19:39