Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ZF] Relationships - problem ze smarty
NorthPole
post 18.12.2007, 09:22:32
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 20.02.2007
Skąd: Kraków

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


Witam

Mam problem z wyświetlaniem w szablonach smarty elementów pobieranych przez findParentRow().
Zdefiniowałem sobie w modelu relacje dla kilku tabel i teraz gdy w kontrolerze dam:
  1. <?php
  2. $news = new News();
  3. $allNews  = $news->fetchAll();
  4.  
  5. foreach ($allNews as $news) {
  6. print_r($news->findParentRow('Users')->username);
  7. }
  8. ?>

Dostaje wartości z tabeli "Users" i wszystko jest OK czyli relacja działa.

Natomiast jak w dodam do widoku
  1. <?php
  2. $this->view->news = $allNews;
  3. ?>

a potem w szablonie
  1. <?php
  2. {foreach from=$news item=row}
  3.  {($row->findParentRow('Users')->username)}<br>
  4. {/foreach}
  5. ?>

to wywala mi błąd
  1. Fatal error: Smarty error: [in news/index.tpl line 13]: syntax error: unrecognized tag: ($row->findParentRow('Users')->username) (Smarty_Compiler.class.php, line 446)

Brak mi pomysłu co może być nie tak? Podpowiedzcie czy to powinno działać i mam błąd gdzieś indziej czy raczej czegoś niedoczytałem i taka metoda jest błędna.
Pozdrawiam NorthPole
Go to the top of the page
+Quote Post
nospor
post 18.12.2007, 09:31:26
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Nie: {($row->findParentRow('Users')->username)}
a: {$row->findParentRow('Users')->username}
na grzyba te nawiasy dawales?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
NorthPole
post 18.12.2007, 09:34:14
Post #3





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 20.02.2007
Skąd: Kraków

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


sorry za nawiasy ale to jedna z prób - też nieudana biggrin.gif
Bez nawiasów też nie działa
Jakieś inne sugestie?
Go to the top of the page
+Quote Post
nospor
post 18.12.2007, 09:45:08
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No ale co ci krzyczy gdy usuniesz nawiasy?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
NorthPole
post 18.12.2007, 10:33:34
Post #5





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 20.02.2007
Skąd: Kraków

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


  1. Fatal error: Smarty error: [in news/index.tpl line 8]: syntax error: unrecognized tag: $row->findParentRow('Users')->username (Smarty_Compiler.class.php, line 446) in


Dodam że własności obiektu row są wyświetlane bezproblemu ($row->title).


::EDIT::

zrobiłem inaczej
  1. <?php
  2. $users  = new Users();
  3. $usersRowset  = $users->find(1);
  4. $user1  = $usersRowset->current();
  5. $this->view->user1 = $user1;
  6. ?>

a potem w szablonie
  1. <?php
  2. {foreach from=$user1->findDependentRowset('News') item=row}
  3.  {$row->title}<br>
  4. {/foreach}
  5. ?>

i to dzała blinksmiley.gif

Więc dlaczego $row->findParentRow('Users')->username wywala mi błąd?questionmark.gif

Ten post edytował NorthPole 18.12.2007, 10:34:43
Go to the top of the page
+Quote Post
nospor
post 18.12.2007, 10:34:53
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Kod
{foreach from=$news item=row}
   {assign var="temp" value=$row->findParentRow('Users')}
   {$temp->username}<br>
{/foreach}


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
NorthPole
post 18.12.2007, 10:58:01
Post #7





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 20.02.2007
Skąd: Kraków

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


Działa yahoo.gif

nospor bardzo dziękuję za lekcję. Widzę że na zadanie domowe mam dużo do zrobienia w temacie smarty.
Pozdrawiam i jeszcze raz dziękuję - to już drugi dzień walki z tym cholerstwem
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 Wersja Lo-Fi Aktualny czas: 15.06.2025 - 04:50