Including a ModelForm in admin.py from forms.py

Viewed 838

I want to add a custom field to admin.py "extra_field" which is defined in YourModelForm class in forms.py
forms.py

***class YourModelForm(forms.ModelForm):***

extra_field = forms.CharField()

def save(self, commit=True):
    extra_field = self.cleaned_data.get('extra_field', None)
    # ...do something with extra_field here...
    return super(YourModelForm, self).save(commit=commit)

class Meta:
    model = movie
    fields = '__all__'

admin.py

    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals

    from django.contrib import admin

    from . models import movie, genre

    from . import forms

    class movieAdmin(admin.ModelAdmin):

        form = YourModelForm

        list_display=('movie_name', 'movie_rating','Date','count',)
        search_fields=('movie_name',)
        filter_horizontal=('movie_genres',)
        list_filter=('Date',)
        date_hierarchy='Date'
        ordering=('-movie_name',)
        fields=('movie_name','movie_rating','movie_genres', 'extra_field',)



    class genreAdmin(admin.ModelAdmin):
         list_display=('genre_name',)


    admin.site.register(movie, movieAdmin)
    admin.site.register(genre, genreAdmin)

NameError: name 'YourModelForm' is not defined

1 Answers
Related