Skip to content

Commit 54f4c97

Browse files
committed
add support for input groups from the widgets
1 parent f8563ec commit 54f4c97

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

bootstrap3/renderers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -209,8 +209,8 @@ def __init__(self, field, *args, **kwargs):
209209
else:
210210
self.placeholder = ''
211211

212-
self.addon_before = kwargs.get('addon_before', '')
213-
self.addon_after = kwargs.get('addon_after', '')
212+
self.addon_before = kwargs.get('addon_before', self.initial_attrs.pop('addon_before', ''))
213+
self.addon_after = kwargs.get('addon_after', self.initial_attrs.pop('addon_after', ''))
214214

215215
# These are set in Django or in the global BOOTSTRAP3 settings, and
216216
# they can be overwritten in the template

bootstrap3/tests.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,7 @@
33

44
import re
55

6-
try:
7-
from unittest import TestCase
8-
TestCase.AssertIn
9-
except AttributeError:
10-
from django.utils.unittest.case import TestCase
6+
from django.test import TestCase
117

128
from django import forms
139
from django.template import Template, Context
@@ -77,6 +73,9 @@ class TestForm(forms.Form):
7773
widget=forms.CheckboxSelectMultiple,
7874
help_text='Check as many as you like.',
7975
)
76+
addon = forms.CharField(
77+
widget=forms.TextInput(attrs={'addon_before': 'before', 'addon_after': 'after'}),
78+
)
8079

8180
required_css_class = 'bootstrap3-req'
8281

@@ -215,6 +214,12 @@ def test_field_names(self):
215214
for field in form:
216215
self.assertIn('name="%s"' % field.name, res)
217216

217+
def test_field_addons(self):
218+
form = TestForm()
219+
res = render_form(form)
220+
self.assertIn('<div class="input-group"><span class="input-group-addon">before</span><input', res)
221+
self.assertIn('/><span class="input-group-addon">after</span></div>', res)
222+
218223
def test_exclude(self):
219224
form = TestForm()
220225
res = render_template(

0 commit comments

Comments
 (0)