File tree Expand file tree Collapse file tree 6 files changed +33
-6
lines changed Expand file tree Collapse file tree 6 files changed +33
-6
lines changed Original file line number Diff line number Diff line change 4
4
-------
5
5
6
6
7
+ 4.8.1 (2014-07-10)
8
+ ++++++++++++++++++
9
+
10
+ * Make extra classes override bootstrap defaults
11
+
12
+
13
+ 4.8.0 (2014-07-10)
14
+ ++++++++++++++++++
15
+
16
+ * Introduced new setting `set_placeholder `, default True
17
+
18
+
7
19
4.7.1 (2014-07-07)
8
20
++++++++++++++++++
9
21
Original file line number Diff line number Diff line change 1
1
# -*- coding: utf-8 -*-
2
2
3
- __version__ = '4.8.0 '
3
+ __version__ = '4.8.1 '
Original file line number Diff line number Diff line change @@ -17,14 +17,16 @@ def split_css_classes(css_classes):
17
17
return [c for c in classes_list if c ]
18
18
19
19
20
- def add_css_class (css_classes , css_class ):
20
+ def add_css_class (css_classes , css_class , prepend = False ):
21
21
"""
22
22
Add a CSS class to a string of CSS classes
23
23
"""
24
24
classes_list = split_css_classes (css_classes )
25
- for c in split_css_classes (css_class ):
26
- if c not in classes_list :
27
- classes_list .append (c )
25
+ classes_to_add = [c for c in split_css_classes (css_class ) if c not in classes_list ]
26
+ if prepend :
27
+ classes_list = classes_to_add + classes_list
28
+ else :
29
+ classes_list += classes_to_add
28
30
return ' ' .join (classes_list )
29
31
30
32
Original file line number Diff line number Diff line change @@ -203,7 +203,7 @@ def add_class_attrs(self):
203
203
RadioSelect ,
204
204
CheckboxSelectMultiple ,
205
205
FileInput )):
206
- classes = add_css_class (classes , 'form-control' )
206
+ classes = add_css_class (classes , 'form-control' , prepend = True )
207
207
# For these widget types, add the size class here
208
208
classes = add_css_class (classes , self .get_size_class ())
209
209
self .widget .attrs ['class' ] = classes
Original file line number Diff line number Diff line change 7
7
8
8
from .exceptions import BootstrapError
9
9
10
+ from .html import add_css_class
11
+
10
12
11
13
RADIO_CHOICES = (
12
14
('1' , 'Radio 1' ),
@@ -304,3 +306,14 @@ def __str__(self):
304
306
</div>
305
307
"""
306
308
self .assertEqual (res .strip (), expected .strip ())
309
+
310
+
311
+ class HtmlTest (TestCase ):
312
+ def test_add_css_class (self ):
313
+ css_classes = "one two"
314
+ css_class = "three four"
315
+ classes = add_css_class (css_classes , css_class )
316
+ self .assertEqual (classes , "one two three four" )
317
+
318
+ classes = add_css_class (css_classes , css_class , prepend = True )
319
+ self .assertEqual (classes , "three four one two" )
You can’t perform that action at this time.
0 commit comments