Ticket #5731: 4080-rebase6783.diff

File 4080-rebase6783.diff, 6.4 KB (added by Karen Tracey <kmtracey@…>, 16 years ago)

4080.diff no longer applied cleanly, rebased on r6783

  • django/newforms/widgets.py

     
    419419
    420420    def render(self):
    421421        """Outputs a <ul> for this set of radio fields."""
    422         return mark_safe(u'<ul>\n%s\n</ul>' % u'\n'.join([u'<li>%s</li>'
    423                 % force_unicode(w) for w in self]))
     422        return mark_safe(u'<ul%s>\n%s\n</ul>' %
     423                         (flatatt(self.attrs),
     424                         u'\n'.join([u'<li>%s</li>' % force_unicode(w) for w in self])))
    424425
    425426class RadioSelect(Select):
    426427    renderer = RadioFieldRenderer
  • tests/regressiontests/forms/regressions.py

     
    4040...     somechoice = ChoiceField(choices=GENDERS, widget=RadioSelect(), label=u'\xc5\xf8\xdf')
    4141>>> f = SomeForm()
    4242>>> f.as_p()
    43 u'<p><label for="id_somechoice_0">\xc5\xf8\xdf:</label> <ul>\n<li><label><input type="radio" id="id_somechoice_0" value="\xc5" name="somechoice" /> En tied\xe4</label></li>\n<li><label><input type="radio" id="id_somechoice_1" value="\xf8" name="somechoice" /> Mies</label></li>\n<li><label><input type="radio" id="id_somechoice_2" value="\xdf" name="somechoice" /> Nainen</label></li>\n</ul></p>'
     43u'<p><label for="id_somechoice_0">\xc5\xf8\xdf:</label> <ul id="id_somechoice">\n<li><label><input type="radio" id="id_somechoice_0" value="\xc5" name="somechoice" /> En tied\xe4</label></li>\n<li><label><input type="radio" id="id_somechoice_1" value="\xf8" name="somechoice" /> Mies</label></li>\n<li><label><input type="radio" id="id_somechoice_2" value="\xdf" name="somechoice" /> Nainen</label></li>\n</ul></p>'
    4444
    4545Testing choice validation with UTF-8 bytestrings as input (these are the
    4646Russian abbreviations "мес." and "шт.".
     
    5656>>> activate('ru')
    5757>>> f = SomeForm({})
    5858>>> f.as_p()
    59 u'<ul class="errorlist"><li>\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.</li></ul>\n<p><label for="id_somechoice_0">\xc5\xf8\xdf:</label> <ul>\n<li><label><input type="radio" id="id_somechoice_0" value="\xc5" name="somechoice" /> En tied\xe4</label></li>\n<li><label><input type="radio" id="id_somechoice_1" value="\xf8" name="somechoice" /> Mies</label></li>\n<li><label><input type="radio" id="id_somechoice_2" value="\xdf" name="somechoice" /> Nainen</label></li>\n</ul></p>'
     59u'<ul class="errorlist"><li>\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.</li></ul>\n<p><label for="id_somechoice_0">\xc5\xf8\xdf:</label> <ul id="id_somechoice">\n<li><label><input type="radio" id="id_somechoice_0" value="\xc5" name="somechoice" /> En tied\xe4</label></li>\n<li><label><input type="radio" id="id_somechoice_1" value="\xf8" name="somechoice" /> Mies</label></li>\n<li><label><input type="radio" id="id_somechoice_2" value="\xdf" name="somechoice" /> Nainen</label></li>\n</ul></p>'
    6060>>> deactivate()
    6161
    6262Deep copying translated text shouldn't raise an error
  • tests/regressiontests/forms/forms.py

     
    423423zero-based index.
    424424>>> f = FrameworkForm(auto_id='id_%s')
    425425>>> print f['language']
    426 <ul>
     426<ul id="id_language">
    427427<li><label><input type="radio" id="id_language_0" value="P" name="language" /> Python</label></li>
    428428<li><label><input type="radio" id="id_language_1" value="J" name="language" /> Java</label></li>
    429429</ul>
     
    433433ID of the *first* radio button.
    434434>>> print f
    435435<tr><th><label for="id_name">Name:</label></th><td><input type="text" name="name" id="id_name" /></td></tr>
    436 <tr><th><label for="id_language_0">Language:</label></th><td><ul>
     436<tr><th><label for="id_language_0">Language:</label></th><td><ul id="id_language">
    437437<li><label><input type="radio" id="id_language_0" value="P" name="language" /> Python</label></li>
    438438<li><label><input type="radio" id="id_language_1" value="J" name="language" /> Java</label></li>
    439439</ul></td></tr>
    440440>>> print f.as_ul()
    441441<li><label for="id_name">Name:</label> <input type="text" name="name" id="id_name" /></li>
    442 <li><label for="id_language_0">Language:</label> <ul>
     442<li><label for="id_language_0">Language:</label> <ul id="id_language">
    443443<li><label><input type="radio" id="id_language_0" value="P" name="language" /> Python</label></li>
    444444<li><label><input type="radio" id="id_language_1" value="J" name="language" /> Java</label></li>
    445445</ul></li>
    446446>>> print f.as_p()
    447447<p><label for="id_name">Name:</label> <input type="text" name="name" id="id_name" /></p>
    448 <p><label for="id_language_0">Language:</label> <ul>
     448<p><label for="id_language_0">Language:</label> <ul id="id_language">
    449449<li><label><input type="radio" id="id_language_0" value="P" name="language" /> Python</label></li>
    450450<li><label><input type="radio" id="id_language_1" value="J" name="language" /> Java</label></li>
    451451</ul></p>
  • tests/regressiontests/forms/widgets.py

     
    740740# Attributes provided at instantiation are passed to the constituent inputs
    741741>>> w = RadioSelect(attrs={'id':'foo'})
    742742>>> print w.render('beatle', 'J', choices=(('J', 'John'), ('P', 'Paul'), ('G', 'George'), ('R', 'Ringo')))
    743 <ul>
     743<ul id="foo">
    744744<li><label><input checked="checked" type="radio" id="foo_0" value="J" name="beatle" /> John</label></li>
    745745<li><label><input type="radio" id="foo_1" value="P" name="beatle" /> Paul</label></li>
    746746<li><label><input type="radio" id="foo_2" value="G" name="beatle" /> George</label></li>
     
    750750# Attributes provided at render-time are passed to the constituent inputs
    751751>>> w = RadioSelect()
    752752>>> print w.render('beatle', 'J', choices=(('J', 'John'), ('P', 'Paul'), ('G', 'George'), ('R', 'Ringo')), attrs={'id':'bar'})
    753 <ul>
     753<ul id="bar">
    754754<li><label><input checked="checked" type="radio" id="bar_0" value="J" name="beatle" /> John</label></li>
    755755<li><label><input type="radio" id="bar_1" value="P" name="beatle" /> Paul</label></li>
    756756<li><label><input type="radio" id="bar_2" value="G" name="beatle" /> George</label></li>
Back to Top