Python django.forms.models.fields_for_model() Examples
The following are 11
code examples of django.forms.models.fields_for_model().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
django.forms.models
, or try the search function
.
Example #1
Source File: admin.py From django-seo with BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_modelinstance_form(metadata_class): model_class = metadata_class._meta.get_model('modelinstance') # Restrict content type choices to the models set in seo_models content_types = get_seo_content_types(metadata_class._meta.seo_models) # Get a list of fields, with _content_type at the start important_fields = ['_content_type'] + ['_object_id'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _content_type = forms.ModelChoiceField( queryset=ContentType.objects.filter(id__in=content_types), empty_label=None, label=capfirst(_("model")), ) _object_id = forms.IntegerField(label=capfirst(_("ID"))) class Meta: model = model_class fields = _fields return ModelMetadataForm
Example #2
Source File: admin.py From django-seo with BSD 3-Clause "New" or "Revised" License | 6 votes |
def get_view_form(metadata_class): model_class = metadata_class._meta.get_model('view') # Restrict content type choices to the models set in seo_models view_choices = [(key, " ".join(key.split("_"))) for key in get_seo_views(metadata_class)] view_choices.insert(0, ("", "---------")) # Get a list of fields, with _view at the start important_fields = ['_view'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _view = forms.ChoiceField(label=capfirst(_("view")), choices=view_choices, required=False) class Meta: model = model_class fields = _fields return ModelMetadataForm
Example #3
Source File: edit_handlers.py From wagtail with BSD 3-Clause "New" or "Revised" License | 6 votes |
def extract_panel_definitions_from_model_class(model, exclude=None): if hasattr(model, 'panels'): return model.panels panels = [] _exclude = [] if exclude: _exclude.extend(exclude) fields = fields_for_model(model, exclude=_exclude, formfield_callback=formfield_for_dbfield) for field_name, field in fields.items(): try: panel_class = field.widget.get_panel() except AttributeError: panel_class = FieldPanel panel = panel_class(field_name) panels.append(panel) return panels
Example #4
Source File: admin.py From django-seo2 with MIT License | 6 votes |
def get_view_form(metadata_class): model_class = metadata_class._meta.get_model('view') # Restrict content type choices to the models set in seo_models view_choices = [(key, " ".join(key.split("_"))) for key in get_seo_views(metadata_class)] view_choices.insert(0, ("", "---------")) # Get a list of fields, with _view at the start important_fields = ['_view'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _view = forms.ChoiceField(label=capfirst(_("view")), choices=view_choices, required=False) class Meta: model = model_class fields = _fields return ModelMetadataForm
Example #5
Source File: admin.py From django-seo with BSD 3-Clause "New" or "Revised" License | 5 votes |
def get_model_form(metadata_class): model_class = metadata_class._meta.get_model('model') # Restrict content type choices to the models set in seo_models content_types = get_seo_content_types(metadata_class._meta.seo_models) content_type_choices = [(x._get_pk_val(), smart_str(x)) for x in ContentType.objects.filter(id__in=content_types)] # Get a list of fields, with _content_type at the start important_fields = ['_content_type'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _content_type = forms.ChoiceField(label=capfirst(_("model")), choices=content_type_choices) class Meta: model = model_class fields = _fields def clean__content_type(self): value = self.cleaned_data['_content_type'] try: return ContentType.objects.get(pk=int(value)) except (ContentType.DoesNotExist, ValueError): raise forms.ValidationError("Invalid ContentType") return ModelMetadataForm
Example #6
Source File: admin.py From django-seo with BSD 3-Clause "New" or "Revised" License | 5 votes |
def get_path_form(metadata_class): model_class = metadata_class._meta.get_model('path') # Get a list of fields, with _view at the start important_fields = ['_path'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): class Meta: model = model_class fields = _fields return ModelMetadataForm
Example #7
Source File: widget.py From django-leonardo with BSD 3-Clause "New" or "Revised" License | 5 votes |
def fields(cls): widget_fields = [ f.name for f in Widget._meta.fields] return fields_for_model( cls, exclude=widget_fields, widgets=WIDGETS)
Example #8
Source File: forms.py From sal with Apache License 2.0 | 5 votes |
def set_value_field(self, model, field_name): """ Adds a ``value`` field to this form that uses the appropriate formfield for the named target field. This will help to ensure that the value is correctly validated. """ fields = fields_for_model(model, fields=[field_name]) self.fields['value'] = fields[field_name]
Example #9
Source File: admin.py From django-seo2 with MIT License | 5 votes |
def get_model_form(metadata_class): model_class = metadata_class._meta.get_model('model') # Restrict content type choices to the models set in seo_models content_types = get_seo_content_types(metadata_class._meta.seo_models) content_type_choices = [(x._get_pk_val(), smart_text(x)) for x in ContentType.objects.filter(id__in=content_types)] # Get a list of fields, with _content_type at the start important_fields = ['_content_type'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _content_type = forms.ChoiceField(label=capfirst(_("model")), choices=content_type_choices) class Meta: model = model_class fields = _fields def clean__content_type(self): value = self.cleaned_data['_content_type'] try: return ContentType.objects.get(pk=int(value)) except (ContentType.DoesNotExist, ValueError): raise forms.ValidationError("Invalid ContentType") return ModelMetadataForm
Example #10
Source File: admin.py From django-seo2 with MIT License | 5 votes |
def get_modelinstance_form(metadata_class): model_class = metadata_class._meta.get_model('modelinstance') # Restrict content type choices to the models set in seo_models content_types = get_seo_content_types(metadata_class._meta.seo_models) # Get a list of fields, with _content_type at the start important_fields = ['_content_type'] + ['_object_id'] + core_choice_fields( metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): _content_type = forms.ModelChoiceField( queryset=ContentType.objects.filter(id__in=content_types), empty_label=None, label=capfirst(_("model")), ) _object_id = forms.IntegerField(label=capfirst(_("ID"))) class Meta: model = model_class fields = _fields return ModelMetadataForm
Example #11
Source File: admin.py From django-seo2 with MIT License | 5 votes |
def get_path_form(metadata_class): model_class = metadata_class._meta.get_model('path') # Get a list of fields, with _view at the start important_fields = ['_path'] + core_choice_fields(metadata_class) _fields = important_fields + list(fields_for_model(model_class, exclude=important_fields).keys()) class ModelMetadataForm(forms.ModelForm): class Meta: model = model_class fields = _fields return ModelMetadataForm