首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使django-taggit管理文本输入字段更大?

如何使django-taggit管理文本输入字段更大?
EN

Stack Overflow用户
提问于 2014-06-25 16:56:31
回答 1查看 699关注 0票数 1

根据标题,我如何告诉管理界面(admin.py)对使用django-taggit的模型的标记字段使用自定义大小:

代码语言:javascript
复制
tags = TaggableManager()

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-08-19 00:58:40

Django Admin - Overriding the widget of a custom form field类似的问题。

但是,您需要覆盖任何admin.widgets,例如AdminTextareaWidget,以便正确显示标记。否则,表单字段值将显示为

代码语言:javascript
复制
[<TaggedItem: Product object tagged with bar>, 
<TaggedItem: Product object tagged with foo>, 
<TaggedItem: Product object tagged with baz>]

示例代码来说明这一点。

代码语言:javascript
复制
#forms.py

from django import forms
from django.contrib.admin.widgets import AdminTextareaWidget
from django.utils import six

from models import Product

from taggit.utils import edit_string_for_tags


class TaggitAdminTextareaWidget(AdminTextareaWidget):
    # taken from taggit.forms.TagWidget
    def render(self, name, value, attrs=None):
        if value is not None and not isinstance(value, six.string_types):
            value = edit_string_for_tags([o.tag for o in value.select_related("tag")])
        return super(TaggitAdminTextareaWidget, self).render(name, value, attrs)


class ProductAdminForm(forms.ModelForm):
    class Meta:
        model = Product
        widgets = {
            'tags': TaggitAdminTextareaWidget
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24404272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档