Fixed #13361 - Made sure jQuery is always included in the admin changelist and changeform. Thanks to Carl Meyer for report and patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@12997 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
1ad9c36fb8
commit
c3dbe9d509
|
@ -271,9 +271,10 @@ class ModelAdmin(BaseModelAdmin):
|
||||||
def _media(self):
|
def _media(self):
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
||||||
js = ['js/core.js', 'js/admin/RelatedObjectLookups.js']
|
js = ['js/core.js', 'js/admin/RelatedObjectLookups.js',
|
||||||
|
'js/jquery.min.js', 'js/jquery.init.js']
|
||||||
if self.actions is not None:
|
if self.actions is not None:
|
||||||
js.extend(['js/jquery.min.js', 'js/jquery.init.js', 'js/actions.min.js'])
|
js.extend(['js/actions.min.js'])
|
||||||
if self.prepopulated_fields:
|
if self.prepopulated_fields:
|
||||||
js.append('js/urlify.js')
|
js.append('js/urlify.js')
|
||||||
js.append('js/prepopulate.min.js')
|
js.append('js/prepopulate.min.js')
|
||||||
|
|
|
@ -938,6 +938,14 @@ on your ``ModelAdmin``::
|
||||||
Keep in mind that this will be prepended with ``MEDIA_URL``. The same rules
|
Keep in mind that this will be prepended with ``MEDIA_URL``. The same rules
|
||||||
apply as :ref:`regular media definitions on forms <topics-forms-media>`.
|
apply as :ref:`regular media definitions on forms <topics-forms-media>`.
|
||||||
|
|
||||||
|
Django admin Javascript makes use of the `jQuery`_ library. To avoid
|
||||||
|
conflict with user scripts, Django's jQuery is namespaced as
|
||||||
|
``django.jQuery``. If you want to use jQuery in your own admin
|
||||||
|
JavaScript without including a second copy, you can use the
|
||||||
|
``django.jQuery`` object on changelist and add/edit views.
|
||||||
|
|
||||||
|
.. _jQuery: http://jquery.com
|
||||||
|
|
||||||
Adding custom validation to the admin
|
Adding custom validation to the admin
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -1386,6 +1386,14 @@ class AdminActionsTest(TestCase):
|
||||||
self.assert_('action-checkbox-column' not in response.content,
|
self.assert_('action-checkbox-column' not in response.content,
|
||||||
"Found unexpected action-checkbox-column class in response")
|
"Found unexpected action-checkbox-column class in response")
|
||||||
|
|
||||||
|
def test_model_without_action_still_has_jquery(self):
|
||||||
|
"Tests that a ModelAdmin without any actions still gets jQuery included in page"
|
||||||
|
response = self.client.get('/test_admin/admin/admin_views/oldsubscriber/')
|
||||||
|
self.assertEquals(response.context["action_form"], None)
|
||||||
|
self.assert_('jquery.min.js' in response.content,
|
||||||
|
"jQuery missing from admin pages for model with no admin actions"
|
||||||
|
)
|
||||||
|
|
||||||
def test_action_column_class(self):
|
def test_action_column_class(self):
|
||||||
"Tests that the checkbox column class is present in the response"
|
"Tests that the checkbox column class is present in the response"
|
||||||
response = self.client.get('/test_admin/admin/admin_views/subscriber/')
|
response = self.client.get('/test_admin/admin/admin_views/subscriber/')
|
||||||
|
|
Loading…
Reference in New Issue