这不是一个元组吗? [英] Is this not a tuple?

查看:140
本文介绍了这不是一个元组吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不知道我在这里做错了什么。我的错误是:在/ admin /' CategoryAdmin.fields 不正确地配置



不是CategoryAdmin.fields一个元组?我读这个错了吗?



admin.py
..

  class CategoryAdmin(admin.ModelAdmin):
fields =('title')
list_display =('id','title','creation_date')

class PostAdmin(admin.ModelAdmin):
fields =('author','title','content')
list_display =('id','title',' creation_date')

admin.site.register(
models.Category,
CategoryAdmin

admin.site.register(
models .Post,
PostAdmin


解决方案

p>不,不是。您需要添加一个逗号:

  fields =('title',)

这是一个元组的逗号。圆括号在这里真的是可选的:

 >>> ('title')
'title'
>>> 'title',
('title')

圆括号当然还是好的主意,括号元组更容易在视觉上看到,括号中的函数调用中的元组与其他参数( foo(('title',),'bar')区分开)不同于 foo('title','bar'))。


I can't figure out what I'm doing wrong here. My error is: ImproperlyConfigured at /admin/ 'CategoryAdmin.fields' must be a list or tuple.

Isn't the CategoryAdmin.fields a tuple? Am I reading this wrong?

admin.py ..

class CategoryAdmin(admin.ModelAdmin):
    fields = ('title')
    list_display = ('id', 'title', 'creation_date')

class PostAdmin(admin.ModelAdmin):
    fields = ('author', 'title', 'content')
    list_display = ('id', 'title', 'creation_date')

admin.site.register(
    models.Category, 
    CategoryAdmin
)
admin.site.register(
    models.Post, 
    PostAdmin
)

解决方案

No, it is not. You need to add a comma:

fields = ('title',)

It is the comma that makes this a tuple. The parenthesis are really just optional here:

>>> ('title')
'title'
>>> 'title',
('title',)

The parenthesis are of course still a good idea, with parenthesis tuples are easier to spot visually, and the parenthesis distinguish the tuple in a function call from other parameters (foo(('title',), 'bar') is different from foo('title', 'bar')).

这篇关于这不是一个元组吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆