Django

Code

Changeset 3800

Show
Ignore:
Timestamp:
09/23/06 04:49:58 (2 years ago)
Author:
mtredinnick
Message:

Fixed #2454 -- Make "ifchanged" tag work more predictably inside nested
for-loops. Thanks, dummy@habmalnefrage.de.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/AUTHORS

    r3797 r3800  
    7070    dne@mayonnaise.net 
    7171    Maximillian Dornseif <md@hudora.de> 
     72    dummy@habmalnefrage.de 
    7273    Jeremy Dunck <http://dunck.us/> 
    7374    Andy Dustman <farcepest@gmail.com> 
  • django/trunk/django/template/defaulttags.py

    r3773 r3800  
    130130 
    131131    def render(self, context): 
     132        if context.has_key('forloop') and context['forloop']['first']: 
     133            self._last_seen = None 
    132134        content = self.nodelist.render(context) 
    133135        if content != self._last_seen: 
  • django/trunk/tests/regressiontests/templates/tests.py

    r3773 r3800  
    306306            'ifchanged02': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% endfor %}', { 'num': (1,1,3) }, '13'), 
    307307            'ifchanged03': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% endfor %}', { 'num': (1,1,1) }, '1'), 
     308            'ifchanged04': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% for x in numx %}{% ifchanged %}{{ x }}{% endifchanged %}{% endfor %}{% endfor %}', { 'num': (1, 2, 3), 'numx': (2, 2, 2)}, '122232'), 
     309            'ifchanged05': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% for x in numx %}{% ifchanged %}{{ x }}{% endifchanged %}{% endfor %}{% endfor %}', { 'num': (1, 1, 1), 'numx': (1, 2, 3)}, '1123123123'), 
     310            'ifchanged06': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% for x in numx %}{% ifchanged %}{{ x }}{% endifchanged %}{% endfor %}{% endfor %}', { 'num': (1, 1, 1), 'numx': (2, 2, 2)}, '1222'), 
     311            'ifchanged07': ('{% for n in num %}{% ifchanged %}{{ n }}{% endifchanged %}{% for x in numx %}{% ifchanged %}{{ x }}{% endifchanged %}{% for y in numy %}{% ifchanged %}{{ y }}{% endifchanged %}{% endfor %}{% endfor %}{% endfor %}', { 'num': (1, 1, 1), 'numx': (2, 2, 2), 'numy': (3, 3, 3)}, '1233323332333'), 
    308312 
    309313            ### IFEQUAL TAG ###########################################################