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,7 +186,8 @@ class ClassMixin(object):
mro.append(cls_new) mro.append(cls_new)
yield cls_new yield cls_new
def get_filters(self, origin_scope=None, is_instance=False): def get_filters(self, origin_scope=None, is_instance=False, include_metaclasses=True):
if include_metaclasses:
metaclasses = self.get_metaclasses() metaclasses = self.get_metaclasses()
if metaclasses: if metaclasses:
for f in self.get_metaclass_filters(metaclasses): for f in self.get_metaclass_filters(metaclasses):

View File

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

View File

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