8

私が間違っていることを願っていますがhelp_text、 ManyToManyField を no にする唯一の__init__方法は、フォームのメソッドを作成して上書きすることself.fields[fieldname].help_textです。それが本当に唯一の方法ですか?私はCheckboxSelectMultpleウィジェットを使用する方が好き__init__なので、ManyToManyField.

class ManyToManyField(RelatedField, Field):
    description = _("Many-to-many relationship")
    def __init__(self, to, **kwargs):
        #some other stuff
        msg = _('Hold down "Control", or "Command" on a Mac, to select more than one.')
        self.help_text = string_concat(self.help_text, ' ', msg)
4

4 に答える 4

13
class Item(models.Model):
    ...
    category = models.ManyToManyField(Category, null=True,blank=True)
    category.help_text = ''
    ...
于 2010-12-25T16:26:20.610 に答える
0

get_form をオーバーライドすることで、Admin クラスでも実行できます。

class FooAdmin(ModelAdmin):
    ...
    def get_form(self, request, obj=None, **kwargs):
        form = ModelAdmin.get_form(self, request, obj=obj, **kwargs)
        form.base_fields['bar'].widget = CheckboxSelectMultiple()
        form.base_fields['bar'].help_text = ''
        return form
于 2013-04-19T14:11:58.523 に答える
0

あなたは間違っていません。私は自分でこの問題に遭遇し、これを回避するために独自の ManyToManyField を作成しました。

これは、私がコメントした関連するバグです: http://code.djangoproject.com/ticket/6183

于 2010-07-13T23:31:17.350 に答える