1
0
mirror of https://github.com/django/django.git synced 2025-10-24 14:16:09 +00:00

Fixed #28695 -- Allowed models to use __init_subclass__().

This commit is contained in:
k
2017-10-13 21:29:00 -04:00
committed by Tim Graham
parent 9dd405973c
commit 399a8db33b
3 changed files with 22 additions and 3 deletions

View File

@@ -60,7 +60,7 @@ def subclass_exception(name, bases, module, attached_to):
class ModelBase(type):
"""Metaclass for all models."""
def __new__(cls, name, bases, attrs):
def __new__(cls, name, bases, attrs, **kwargs):
super_new = super().__new__
# Also ensure initialization is only performed for subclasses of Model
@@ -75,7 +75,7 @@ class ModelBase(type):
classcell = attrs.pop('__classcell__', None)
if classcell is not None:
new_attrs['__classcell__'] = classcell
new_class = super_new(cls, name, bases, new_attrs)
new_class = super_new(cls, name, bases, new_attrs, **kwargs)
attr_meta = attrs.pop('Meta', None)
abstract = getattr(attr_meta, 'abstract', False)
if not attr_meta: