Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [phptal] warunek w pętli
brobo
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 22.02.2012

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


Witam wszystkich, to mój dziewiczy post (IMG:style_emoticons/default/biggrin.gif)

O jakiegoś czasu korzystam z PHPTAL - jestem zachwycony, jednak ostatnio próbuję skorzystać z warunków w pętli i się nie udaje . Niby wygląda ok, ale nie działa. Oto fragment szablonu:
  1. <li tal:repeat="item items">${item/title} -
  2. <span tal:condition="php: item.status EQ 0" class="status${item/status}" tal:omit-tag="">BAD</span>
  3. <span tal:condition="php: item.status NE 0" class="status${item/status}" tal:omit-tag="">OK</span>
  4. </li>


Status przyjmuje wartości 0,1,2.
Efekt pętli jest taki, że zawsze jest spełniony warunek 1 (jakby ${item/status} miał wartość cały czas 0), pomimo iż wartość statusu do klasy podstawiana jest poprawnie (0-2).

Jak powinien poprawnie wyglądać ten warunek?

Ten post edytował brobo 22.02.2012, 09:05:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
brobo
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 22.02.2012

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


Nie chciałbym się wykazywać tutaj jakąś ignorancją, ale szczerze powiedziawszy Twój post trochę przerósł moje umiejętności i wiedzę więc prosze o szczegóły.

Cytat(viking @ 22.02.2012, 20:28:24 ) *
A masz włączone na devie raportowanie błędów?

Przetwarzam szablony zgodnie z manualem (jak tutaj http://phptal.org/manual/en/split/firstexample.html), więc błedy mam wyświetlane, jakie są jeszcze możliwości raportowania - nie mam pojęcia.

Cytat
Kropka w php: oznacza -> co jest w dokumentacji opisane. Da ci to Notice: Trying to get property of non-object

Próbowałem już różnych opcji ($item/status, ${item/status}), ale takiego błędu nie otrzymałem.

Cytat
  1. <?php
  2. /* tag "span" from line 47 */ ;
  3. if ($ctx->item->status != 0): ;
  4. ?>
  5. OK<?php endif; ?>
  6.  
  7. </li><?php
  8. endforeach ;
  9. $ctx = $tpl->popContext() ;
  10. ?>

Nawet nie wiedziałem, że mogę posługiwać się wewnątrz szablonu do tego stopnia php, ale jednak chciałbym tego uniknąć - właśnie ta wymuszona czystość kodu szablonów najbardziej mi się podoba(ła). Jak mogę się jeszcze dostać do wartości w tej tablicy/zmiennej w tym warunku? Chyba jest jakiś sposób...

Cytat
TAL jest świetnie opisany z masą przykładów jak poszukasz oryginału z Pythona. Nie wszystko w PHPTAL jest zaimplementowane.

Dzięki, spróbuję, choć dodtychczas bałem się, że mój zupełny brak znajomości Pythona może być dużą przeszkodą.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 27.12.2025 - 07:57