Make sure Django User inference works

This commit is contained in:
Dave Halter
2020-04-25 21:52:47 +02:00
parent 9b58bf6199
commit 92623232c3
3 changed files with 17 additions and 10 deletions

View File

@@ -186,11 +186,12 @@ class ClassMixin(object):
mro.append(cls_new)
yield cls_new
def get_filters(self, origin_scope=None, is_instance=False):
metaclasses = self.get_metaclasses()
if metaclasses:
for f in self.get_metaclass_filters(metaclasses):
yield f
def get_filters(self, origin_scope=None, is_instance=False, include_metaclasses=True):
if include_metaclasses:
metaclasses = self.get_metaclasses()
if metaclasses:
for f in self.get_metaclass_filters(metaclasses):
yield f
for cls in self.py__mro__():
if cls.is_compiled():

View File

@@ -107,9 +107,10 @@ def _create_manager_for(cls, manager_cls='BaseManager'):
def _new_dict_filter(cls):
filter_ = ParserTreeFilter(parent_context=cls.as_context())
filters = cls.get_filters(is_instance=True, include_metaclasses=False)
dct = {
name.string_name: DjangoModelName(cls, name)
for filter_ in filters
for name in filter_.values()
}
manager = _create_manager_for(cls)

View File

@@ -5,10 +5,6 @@ from django.db import models
from django.contrib.auth.models import User
#? str()
User().email
class Tag(models.Model):
tag_name = models.CharField()
@@ -124,3 +120,12 @@ model_instance.objects.get().char_field
model_instance.objects.update(x='')
#? BusinessModel()
model_instance.objects.create()
# -----------------
# Django Auth
# -----------------
#? str()
User().email
#? str()
User.objects.get().email