- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个通过 Wagtail 的 modeladmin
公开的模型,在我尝试应用包含 ForeignKey 的 list_filter
之前一直有效。我有一个名为 Region 的自引用模型(用于存储县、市和镇),我希望能够按 Parent
级别在其上创建过滤器。
我在 Django 1.10 上运行 Wagtail 1.8.1。这是模型:
class Region(models.Model):
"""
Tree of regions and sub-regions.
"""
name = models.CharField(max_length=255)
parent = models.ForeignKey(
'Region',
blank=True,
null=True,
)
class Meta:
unique_together = ('name', 'parent')
def __str__(self):
return '{0}'.format(
self.name,
)
wagtail_hooks.py
中的 ModelAdmin
:
class RegionAdmin(ModelAdmin):
model = Region
menu_icon = 'doc-full-inverse'
empty_value_display = 'ROOT'
list_display = ('parent', 'name')
list_filter = ('parent')
modeladmin_register(RegionAdmin)
如果我注释掉 RegionAdmin
类中的 list_filter
行,它会正常工作。文档说它可以在列表中使用 ForeignKey
。我错过了一些明显的东西吗?堆栈跟踪在这里:
Traceback (most recent call last):
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/core/handlers/exception.py", line 39, in inner
response = get_response(request)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/core/handlers/base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/core/handlers/base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/views/decorators/cache.py", line 43, in _cache_controlled
response = viewfunc(request, *args, **kw)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/wagtail/wagtailadmin/decorators.py", line 24, in decorated_view
return view_func(request, *args, **kwargs)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/wagtail/contrib/modeladmin/options.py", line 350, in index_view
return view_class.as_view(**kwargs)(request)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/views/generic/base.py", line 68, in view
return self.dispatch(request, *args, **kwargs)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/utils/decorators.py", line 67, in _wrapper
return bound_func(*args, **kwargs)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
return view_func(request, *args, **kwargs)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/utils/decorators.py", line 63, in bound_func
return func.__get__(self, type(self))(*args2, **kwargs2)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/wagtail/contrib/modeladmin/views.py", line 249, in dispatch
self.queryset = self.get_queryset(request)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/wagtail/contrib/modeladmin/views.py", line 554, in get_queryset
filters_use_distinct) = self.get_filters(request)
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/wagtail/contrib/modeladmin/views.py", line 381, in get_filters
field_path)[-1]
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/contrib/admin/utils.py", line 485, in get_fields_from_path
fields.append(parent._meta.get_field(piece))
File "/home/vagrant/.virtualenvs/sepia/lib/python3.5/site-packages/django/db/models/options.py", line 619, in get_field
raise FieldDoesNotExist('%s has no field named %r' % (self.object_name, field_name))
django.core.exceptions.FieldDoesNotExist: Region has no field named 'p'
感谢任何帮助或想法!
最佳答案
你少了一个逗号:
list_filter = ('parent',)
如果没有逗号,括号将被忽略,django 将迭代字符串,而不是元组(因为没有元组!),因此尝试访问字段 p
。
来自docs :
a tuple with one item is constructed by following a value with a comma (it is not sufficient to enclose a single value in parentheses). Ugly, but effective.
关于python - 带有 list_filter 错误 : FieldDoesNotExist: Region has no field named 'p' 的 Wagtail ModelAdmin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41982634/
我正在运行一个带有两个 HBase 0.94.7 区域服务器的小型集群。我发现区域服务器上的负载请求非常不平衡。从网络用户界面,我得到: Region1: numberOfOnlineRegions
我在 Backbone.Marionette 中有一个非常复杂(?)的布局,其中一些区域放置在 MainRegion 中。所有这些都是 CollectionView 的一部分,因此无法通过 var 直
我正在从事这样一个项目,其中应用程序执行以下操作: 用户选择一个半径(10 米到 1000 米),然后按“Go”按钮转到下一个 viewController 这里的应用程序抓取用户当前位置,并根据当前
我使用一个区域和两个 View 。我有一个 ComboBox,让用户可以选择区域中的 View 。 我有两个问题: 第一个问题是: _regionManager.Regions.Add("MyRegi
enter image description here 我正在按照MVVM模式使用WPF开发Prism Sample应用程序,但是当它通过以下代码时,它在我的应用程序中存在一些问题: var vie
根据Formatting Object documentation region-start( body 左侧的区域)跨越 之间 region-before(页眉)和 region-after(页脚)
我试图在 region-before 和 region-body 之间留出 10mm 的空间。但我无法将其与 regin-before 的大小相关联。 边界应该是这样的。使用单线“Bemerkung”
我正在伦敦地区的 AWS beanstalk 平台上部署 Spring boot 应用程序,但出现错误:- “无法实例化 [org.springframework.cloud.aws.core.reg
运行 vagrant 命令时出现如下错误, # vagrant up --provider=aws 这台机器的配置有错误。请修复以下错误并重试: AWS 提供商:* AMI 必须通过“ami”配置(
这实际上是三个不同的概念还是我混淆了? (我一直在阅读有关线程和垃圾收集的文章,但我自己也很困惑。) “关键部分” - 我认为这可能只是您不希望多个线程同时访问的代码部分的术语,即在 lock 和 M
我运行的是 Windows 10。当我从开始菜单中打开“区域和语言设置”时,我可以选择“国家或地区”。我试图在 C# 程序中获取此值。 我在丹麦。我曾尝试将我的国家/地区更改为德国(请参阅 scree
我是 javascript 新手,正在学习如何将新内容添加到现有 html 中。在下面的代码中,我尝试计算 DOM 中 li 的数量,并将总数显示到现有的 h2 元素。 我原以为结果是Region 6
我知道还有其他相同的问题,但他们没有解决我的问题。 我不断收到错误:Aws::Errors::MissingRegionError in BooksController#create, 缺少区域;使用
尝试使用 aws s3 java api 创建 AmazonS3ClientBuilder 对象并收到错误 按照这个例子: https://docs.aws.amazon.com/code-sampl
我使用 Rails 4.1 和 Postgresql(带有 PG gem)作为我的数据库。我有一个非常多的协会,从公司到省,有一个称为区域的连接表。现在显然区域表没有主键,因为我使用了 { :id =
我是一名优秀的程序员,十分优秀!