mirror of
https://github.com/django/django.git
synced 2025-10-27 23:56:08 +00:00
Fixed #19617 -- Refactored Form metaclasses to support more inheritance scenarios.
Thanks apollo13, funkybob and mjtamlyn for the reviews.
This commit is contained in:
@@ -131,12 +131,16 @@ def media_property(cls):
|
||||
return property(_media)
|
||||
|
||||
class MediaDefiningClass(type):
|
||||
"Metaclass for classes that can have media definitions"
|
||||
def __new__(cls, name, bases, attrs):
|
||||
new_class = super(MediaDefiningClass, cls).__new__(cls, name, bases,
|
||||
attrs)
|
||||
"""
|
||||
Metaclass for classes that can have media definitions.
|
||||
"""
|
||||
def __new__(mcs, name, bases, attrs):
|
||||
new_class = (super(MediaDefiningClass, mcs)
|
||||
.__new__(mcs, name, bases, attrs))
|
||||
|
||||
if 'media' not in attrs:
|
||||
new_class.media = media_property(new_class)
|
||||
|
||||
return new_class
|
||||
|
||||
@python_2_unicode_compatible
|
||||
|
||||
Reference in New Issue
Block a user