4

管理フォームで autocomplete_light と taggit の両方を使用しようとしています。

ここでオートコンプリート ライトと taggitの統合に関するドキュメントと、管理者へのオートコンプリート ライトの統合に関するドキュメントを読みまし。しかし、両方を同時に行うことについての議論はほとんど (またはまったく) ないようです。

私がこれまでに得たもの。

models.py

from django.db import models
from taggit.managers import TaggableManager
from taggit.models import TagBase, GenericTaggedItemBase


class MyTag(TagBase):
    description = models.CharField(max_length = 250, blank = True, null = True)

class MyTagThroughModel(GenericTaggedItemBase):
    tag = models.ForeignKey(MyTag, related_name = "tagged_items")

class MyModel(models.Model):
    Name = models.CharField(max_length = 200)
    ...
    tags = TaggableManager(through = MyTagThroughModel)

autocomplete_light_registry.py

import autocomplete_light
from models import MyTag
autocomplete_light.register(MyTag)

どのように構成するつもりadmin.pyですか?

これが管理者以外のフォームである場合、フィールドは次のように指定されます。

tags = TagField(widget = TagWidget('MyTagAutocomplete'))

これが taggit 以外の管理フォームである場合は、次を管理モデル クラスに追加します。

form = autocomplete_light.modelform_factory(MyTag)

どうすれば2つを組み合わせることができますか?

4

2 に答える 2

3

代わりにdjango-taggit-autosuggest の使用を検討してください。

Django でタグ付けオートコンプリート Autosuggest

これは、django-grapelli管理スキンで最適に機能します。

于 2016-04-05T07:25:19.587 に答える