python - 为什么 Django 的 ModelAdmin 使用列表而不是元组,反之亦然

标签 python django

来自 Django 介绍教程,在 \mysite\polls\admin.py 中:

from django.contrib import admin
#...
class PollAdmin(admin.ModelAdmin):
  #...
  inlines = [ChoiceInline]
  list_display = ('question', 'pub_date', 'was_published_today')
  list_filter = ['pub_date']

admin.site.register(Poll, PollAdmin)

为什么内联和 list_filter 都使用列表,而 list_display 使用元组?出于某种原因,内联和 list_filters 是否需要可变?

我只是想了解这里的设计决策。

最佳答案

使用哪个并不重要,因为 Django(和您)永远不会在运行时更改它们。重要的是该值是一个可迭代的字符串。当只有一个元素时,我经常使用 foo = ["something"],因为当我不小心说 foo = ("somthing") 时,我经常被钉住foo = ("something",) 的。

我会把这个单元素元组符号问题放在我的 Python 刺激列表中,就在“重要空白”之后。也就是说,我仍然喜欢这门语言。

关于python - 为什么 Django 的 ModelAdmin 使用列表而不是元组,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3671437/

相关文章:

python - IndexError,为什么从 if 语句求值时列表显示为空?

python - Keras:最佳纪元选择

python - 制定通用模型保存方法

使用 Django、Mod_WSGI、Apache 的 Python/C 原始套接字操作

django - 在 Django 测试期间加载夹具时出现 IntegrityError

python - RNN 模型上的网格搜索时训练数据的形状不正确

python - 如何解决 numpy 中的内存 View 错误?

python - 在不与matplotlib相交的情况下在两个圆圈之间绘制椭圆线

Django比较两个对象的值

python - 异常值: (Cannot resolve keyword) In Django