class MyCommonFiledsForm(Form): timestamp = forms.IntegerField(widget=forms.HiddenInput) ... more fileds nothig else (no methods) class MyCommonFiledsFormMixin(object): # just an example of init method def __init__(self, *args, **kwargs): initial = kwargs.get("initial", {}) initial.update(self.generate_security_data()) kwargs["initial"] = initial super(MyCommonFiledsFormMixin, self).__init__(*args, **kwargs) # just an example of a clean method def clean_timestamp(self): """Make sure the timestamp isn't too far (> 2 hours) in the past or too close (< 5 seg).""" ts = self.cleaned_data["timestamp"] difference = time.time() - ts if difference > (2 * 60 * 60) or difference < 5: raise forms.ValidationError(_("Timestamp check failed")) return ts # now for form use like this class ContactForm(MyCommonFiledsFormMixin, MyCommonFiledsForm): sender = forms.EmailField(label=_("Your email address"), initial="@") ...other new fields and methods # now for model form use like this class CommentModelForm(MyCommonFiledsFormMixin, ModelForm): class Meta: model = EntryComment # just as example, use your own model... # this is importat for modelform CommentModelForm.base_fields.update(MyCommonFiledsForm.base_fields)