def test_label_from_instance(self): queryset = Category.objects.all() field = MPTTModelMultipleChoiceField(queryset=queryset) self.assertEqual(field.label_from_instance(self.category_1), "Category 1") self.assertEqual(field.label_from_instance(self.category_2), "|-- Category 2") field = MPTTModelMultipleChoiceField(level_indicator="-->", queryset=queryset) self.assertEqual(field.label_from_instance(self.category_2), "--> Category 2")
def test_get_choices(self): queryset = Category.objects.all() field = MPTTModelMultipleChoiceField(queryset=queryset) self.assertEquals(list(field.choices), [(1, 'Category 1', (1, 1)), (2, '|-- Category 2', (1, 2))]) field = MPTTModelMultipleChoiceField(level_indicator='-->', queryset=queryset) self.assertEquals(list(field.choices), [(1, 'Category 1', (1, 1)), (2, '--> Category 2', (1, 2))])
def test_label_from_instance(self): queryset = Category.objects.all() field = MPTTModelMultipleChoiceField( queryset=queryset) self.assertEquals(field.label_from_instance(self.category_1), 'Category 1') self.assertEquals(field.label_from_instance(self.category_2), '|-- Category 2') field = MPTTModelMultipleChoiceField( level_indicator='-->', queryset=queryset) self.assertEquals(field.label_from_instance(self.category_2), '--> Category 2')
class EntryAdminForm(forms.ModelForm): """ Form for Entry's Admin. """ categories = MPTTModelMultipleChoiceField( label=_('Categories'), required=False, queryset=Category.objects.all(), widget=MPTTFilteredSelectMultiple(_('categories'), False, attrs={'rows': '10'})) tags = TagField(label=_('Tags'), required=False, widget=TagAutoComplete()) def __init__(self, *args, **kwargs): super(EntryAdminForm, self).__init__(*args, **kwargs) rel = ManyToManyRel(Category, 'id') self.fields['categories'].widget = RelatedFieldWidgetWrapper( self.fields['categories'].widget, rel, self.admin_site) self.fields['sites'].initial = [Site.objects.get_current()] class Meta: """ EntryAdminForm's Meta. """ model = Entry fields = forms.ALL_FIELDS
class ModelEntryAdminForm(_EntryAdminForm): """ Form for ModelEntry's Admin """ categories = MPTTModelMultipleChoiceField( label=_('Categories'), required=False, queryset=ModelCategory.objects.all(), widget=MPTTFilteredSelectMultiple(_('categories'))) content = forms.CharField( label=_('Content'), required=False, widget=CKEditor(config_name=CONFIG_NAME)) class Meta: """ EntryAdminForm's Meta. """ model = ModelEntry fields = forms.ALL_FIELDS widgets = { 'tags': TagAutoComplete, 'lead': MiniTextarea, 'excerpt': MiniTextarea, 'image_caption': MiniTextarea, } def __init__(self, *args, **kwargs): super(ModelEntryAdminForm, self).__init__(*args, **kwargs) self.fields['categories'].widget = RelatedFieldWidgetWrapper( self.fields['categories'].widget, ModelEntry.categories.field.rel, self.admin_site)
class EntryAdminForm(forms.ModelForm): """ Form for Entry's Admin. """ categories = MPTTModelMultipleChoiceField( label=_('Categories'), required=False, queryset=Category.objects.all(), widget=MPTTFilteredSelectMultiple(_('categories'))) def __init__(self, *args, **kwargs): super(EntryAdminForm, self).__init__(*args, **kwargs) self.fields['categories'].widget = RelatedFieldWidgetWrapper( self.fields['categories'].widget, Entry.categories.field.remote_field, self.admin_site) class Meta: """ EntryAdminForm's Meta. """ model = Entry fields = forms.ALL_FIELDS widgets = { 'tags': TagAutoComplete, 'lead': MiniTextarea, 'excerpt': MiniTextarea, 'image_caption': MiniTextarea, }
def test_label_from_instance(self): queryset = Category.objects.all() field = MPTTModelMultipleChoiceField(queryset=queryset) self.assertEqual(field.label_from_instance(self.category_1), 'Category 1') self.assertEqual(field.label_from_instance(self.category_2), '|-- Category 2') field = MPTTModelMultipleChoiceField(level_indicator='-->', queryset=queryset) self.assertEqual(field.label_from_instance(self.category_2), '--> Category 2')
class ResourceEntryAdminForm(_EntryAdminForm): topics = MPTTModelMultipleChoiceField( label=_('Topics'), required=False, queryset=TopicCategory.objects.all(), widget=MPTTFilteredSelectMultiple(_('topics'))) types = MPTTModelMultipleChoiceField( label=_('Types'), required=False, queryset=TypeCategory.objects.all(), widget=MPTTFilteredSelectMultiple(_('types'))) industries = MPTTModelMultipleChoiceField( label=_('Industries'), required=False, queryset=IndustryCategory.objects.all(), widget=MPTTFilteredSelectMultiple(_('industries'))) class Meta: model = ResourceEntry fields = forms.ALL_FIELDS widgets = { 'tags': TagAutoComplete, 'lead': MiniTextarea, 'excerpt': MiniTextarea, 'image_caption': MiniTextarea, } def __init__(self, *args, **kwargs): super(ResourceEntryAdminForm, self).__init__(*args, **kwargs) self.fields['topics'].widget = RelatedFieldWidgetWrapper( self.fields['topics'].widget, ResourceEntry.topics.field.rel, self.admin_site) self.fields['types'].widget = RelatedFieldWidgetWrapper( self.fields['types'].widget, ResourceEntry.types.field.rel, self.admin_site) self.fields['industries'].widget = RelatedFieldWidgetWrapper( self.fields['industries'].widget, ResourceEntry.industries.field.rel, self.admin_site)