mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	[1.11.x] Fixed #28530 -- Prevented SelectDateWidget from localizing years in output.
Backport of 9e2bf65d6a from master
			
			
This commit is contained in:
		| @@ -943,7 +943,7 @@ class SelectDateWidget(Widget): | |||||||
|     def get_context(self, name, value, attrs): |     def get_context(self, name, value, attrs): | ||||||
|         context = super(SelectDateWidget, self).get_context(name, value, attrs) |         context = super(SelectDateWidget, self).get_context(name, value, attrs) | ||||||
|         date_context = {} |         date_context = {} | ||||||
|         year_choices = [(i, i) for i in self.years] |         year_choices = [(i, force_text(i)) for i in self.years] | ||||||
|         if self.is_required is False: |         if self.is_required is False: | ||||||
|             year_choices.insert(0, self.year_none_value) |             year_choices.insert(0, self.year_none_value) | ||||||
|         year_attrs = context['widget']['attrs'].copy() |         year_attrs = context['widget']['attrs'].copy() | ||||||
|   | |||||||
| @@ -29,3 +29,6 @@ Bugfixes | |||||||
|  |  | ||||||
| * Omitted ``pages_per_range`` from ``BrinIndex.deconstruct()`` if it's ``None`` | * Omitted ``pages_per_range`` from ``BrinIndex.deconstruct()`` if it's ``None`` | ||||||
|   (:ticket:`25809`). |   (:ticket:`25809`). | ||||||
|  |  | ||||||
|  | * Fixed a regression where ``SelectDateWidget`` localized the years in the | ||||||
|  |   select box (:ticket:`28530`). | ||||||
|   | |||||||
| @@ -485,3 +485,64 @@ class SelectDateWidgetTest(WidgetTest): | |||||||
|         self.assertIs(self.widget.value_omitted_from_data({'field_day': '1'}, {}, 'field'), False) |         self.assertIs(self.widget.value_omitted_from_data({'field_day': '1'}, {}, 'field'), False) | ||||||
|         data = {'field_day': '1', 'field_month': '12', 'field_year': '2000'} |         data = {'field_day': '1', 'field_month': '12', 'field_year': '2000'} | ||||||
|         self.assertIs(self.widget.value_omitted_from_data(data, {}, 'field'), False) |         self.assertIs(self.widget.value_omitted_from_data(data, {}, 'field'), False) | ||||||
|  |  | ||||||
|  |     @override_settings(USE_THOUSAND_SEPARATOR=True, USE_L10N=True) | ||||||
|  |     def test_years_rendered_without_separator(self): | ||||||
|  |         widget = SelectDateWidget(years=(2007,)) | ||||||
|  |         self.check_html(widget, 'mydate', '', html=( | ||||||
|  |             """ | ||||||
|  |             <select name="mydate_month" id="id_mydate_month"> | ||||||
|  |                 <option value="0">---</option> | ||||||
|  |                 <option value="1">January</option> | ||||||
|  |                 <option value="2">February</option> | ||||||
|  |                 <option value="3">March</option> | ||||||
|  |                 <option value="4">April</option> | ||||||
|  |                 <option value="5">May</option> | ||||||
|  |                 <option value="6">June</option> | ||||||
|  |                 <option value="7">July</option> | ||||||
|  |                 <option value="8">August</option> | ||||||
|  |                 <option value="9">September</option> | ||||||
|  |                 <option value="10">October</option> | ||||||
|  |                 <option value="11">November</option> | ||||||
|  |                 <option value="12">December</option> | ||||||
|  |             </select> | ||||||
|  |             <select name="mydate_day" id="id_mydate_day"> | ||||||
|  |                 <option value="0">---</option> | ||||||
|  |                 <option value="1">1</option> | ||||||
|  |                 <option value="2">2</option> | ||||||
|  |                 <option value="3">3</option> | ||||||
|  |                 <option value="4">4</option> | ||||||
|  |                 <option value="5">5</option> | ||||||
|  |                 <option value="6">6</option> | ||||||
|  |                 <option value="7">7</option> | ||||||
|  |                 <option value="8">8</option> | ||||||
|  |                 <option value="9">9</option> | ||||||
|  |                 <option value="10">10</option> | ||||||
|  |                 <option value="11">11</option> | ||||||
|  |                 <option value="12">12</option> | ||||||
|  |                 <option value="13">13</option> | ||||||
|  |                 <option value="14">14</option> | ||||||
|  |                 <option value="15">15</option> | ||||||
|  |                 <option value="16">16</option> | ||||||
|  |                 <option value="17">17</option> | ||||||
|  |                 <option value="18">18</option> | ||||||
|  |                 <option value="19">19</option> | ||||||
|  |                 <option value="20">20</option> | ||||||
|  |                 <option value="21">21</option> | ||||||
|  |                 <option value="22">22</option> | ||||||
|  |                 <option value="23">23</option> | ||||||
|  |                 <option value="24">24</option> | ||||||
|  |                 <option value="25">25</option> | ||||||
|  |                 <option value="26">26</option> | ||||||
|  |                 <option value="27">27</option> | ||||||
|  |                 <option value="28">28</option> | ||||||
|  |                 <option value="29">29</option> | ||||||
|  |                 <option value="30">30</option> | ||||||
|  |                 <option value="31">31</option> | ||||||
|  |             </select> | ||||||
|  |             <select name="mydate_year" id="id_mydate_year"> | ||||||
|  |                 <option value="0">---</option> | ||||||
|  |                 <option value="2007">2007</option> | ||||||
|  |             </select> | ||||||
|  |             """ | ||||||
|  |         )) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user