mirror of
				https://github.com/django/django.git
				synced 2025-11-03 21:25:09 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			73 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
====================
 | 
						|
Model Form Functions
 | 
						|
====================
 | 
						|
 | 
						|
.. module:: django.forms.models
 | 
						|
   :synopsis: Django's functions for building model forms and formsets.
 | 
						|
 | 
						|
.. function:: modelform_factory(model, form=ModelForm, fields=None, exclude=None, formfield_callback=None, widgets=None, localized_fields=None, labels=None, help_texts=None, error_messages=None)
 | 
						|
 | 
						|
    Returns a :class:`~django.forms.ModelForm` class for the given ``model``.
 | 
						|
    You can optionally pass a ``form`` argument to use as a starting point for
 | 
						|
    constructing the ``ModelForm``.
 | 
						|
 | 
						|
    ``fields`` is an optional list of field names. If provided, only the named
 | 
						|
    fields will be included in the returned fields.
 | 
						|
 | 
						|
    ``exclude`` is an optional list of field names. If provided, the named
 | 
						|
    fields will be excluded from the returned fields, even if they are listed
 | 
						|
    in the ``fields`` argument.
 | 
						|
 | 
						|
    ``widgets`` is a dictionary of model field names mapped to a widget.
 | 
						|
 | 
						|
    ``formfield_callback`` is a callable that takes a model field and returns
 | 
						|
    a form field.
 | 
						|
 | 
						|
    ``localized_fields`` is a list of names of fields which should be localized.
 | 
						|
 | 
						|
    ``labels`` is a dictionary of model field names mapped to a label.
 | 
						|
 | 
						|
    ``help_texts`` is a dictionary of model field names mapped to a help text.
 | 
						|
 | 
						|
    ``error_messages`` is a dictionary of model field names mapped to a
 | 
						|
    dictionary of error messages.
 | 
						|
 | 
						|
    See :ref:`modelforms-factory` for example usage.
 | 
						|
 | 
						|
    You must provide the list of fields explicitly, either via keyword arguments
 | 
						|
    ``fields`` or ``exclude``, or the corresponding attributes on the form's
 | 
						|
    inner ``Meta`` class. See :ref:`modelforms-selecting-fields` for more
 | 
						|
    information. Omitting any definition of the fields to use will result in
 | 
						|
    an :exc:`~django.core.exceptions.ImproperlyConfigured` exception.
 | 
						|
 | 
						|
    .. versionchanged:: 1.8
 | 
						|
 | 
						|
        Previously, omitting the list of fields was allowed and resulted in
 | 
						|
        a form with all fields of the model.
 | 
						|
 | 
						|
.. function:: modelformset_factory(model, form=ModelForm, formfield_callback=None, formset=BaseModelFormSet, extra=1, can_delete=False, can_order=False, max_num=None, fields=None, exclude=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None)
 | 
						|
 | 
						|
    Returns a ``FormSet`` class for the given ``model`` class.
 | 
						|
 | 
						|
    Arguments ``model``, ``form``, ``fields``, ``exclude``,
 | 
						|
    ``formfield_callback``, ``widgets``, ``localized_fields``, ``labels``,
 | 
						|
    ``help_texts``, and ``error_messages`` are all passed through to
 | 
						|
    :func:`~django.forms.models.modelform_factory`.
 | 
						|
 | 
						|
    Arguments ``formset``, ``extra``, ``max_num``, ``can_order``,
 | 
						|
    ``can_delete`` and ``validate_max`` are passed through to
 | 
						|
    :func:`~django.forms.formsets.formset_factory`. See :ref:`formsets` for
 | 
						|
    details.
 | 
						|
 | 
						|
    See :ref:`model-formsets` for example usage.
 | 
						|
 | 
						|
.. function:: inlineformset_factory(parent_model, model, form=ModelForm, formset=BaseInlineFormSet, fk_name=None, fields=None, exclude=None, extra=3, can_order=False, can_delete=True, max_num=None, formfield_callback=None, widgets=None, validate_max=False, localized_fields=None, labels=None, help_texts=None, error_messages=None)
 | 
						|
 | 
						|
    Returns an ``InlineFormSet`` using :func:`modelformset_factory` with
 | 
						|
    defaults of ``formset=``:class:`~django.forms.models.BaseInlineFormSet`,
 | 
						|
    ``can_delete=True``, and ``extra=3``.
 | 
						|
 | 
						|
    If your model has more than one :class:`~django.db.models.ForeignKey` to
 | 
						|
    the ``parent_model``, you must specify a ``fk_name``.
 | 
						|
 | 
						|
    See :ref:`inline-formsets` for example usage.
 |