Пример #1
0
    def get_form(self, request, obj=None, **kwargs):
        """
        Get PageForm for the Page model and modify its fields depending on
        the request.
        """
        form = super(M2MPlaceholderAdmin,
                     self).get_form(request, obj, **kwargs)

        if obj:

            for placeholder_name in obj._meta.get_field(
                    'placeholders').placeholders:

                placeholder, created = obj.placeholders.get_or_create(
                    slot=placeholder_name)

                defaults = {
                    'label': capfirst(placeholder_name),
                    'help_text': ''
                }
                defaults.update(kwargs)

                widget = PlaceholderPluginEditorWidget(
                    request, self.placeholder_plugin_filter)
                widget.choices = []

                form.base_fields[placeholder.slot] = CharField(widget=widget,
                                                               required=False)
                form.base_fields[placeholder.slot].initial = placeholder.pk

        return form
Пример #2
0
 def get_form(self, request, obj=None, **kwargs):
     """
     Get PageForm for the Page model and modify its fields depending on
     the request.
     """
     form = super(M2MPlaceholderAdmin, self).get_form(request, obj, **kwargs)
     
     if obj:        
         
         for placeholder_name in (obj._meta.get_field('placeholders')
                                  .placeholders):
             
             placeholder, created = obj.placeholders.get_or_create(
                 slot=placeholder_name)
             
             defaults = {
                 'label': capfirst(placeholder_name),
                 'help_text': ''
                 }
             defaults.update(kwargs)
             
             widget = PlaceholderPluginEditorWidget(
                 request, self.placeholder_plugin_filter)
             widget.choices = []
             
             form.base_fields[placeholder.slot] = CharField(
                 widget=widget, required=False)   
             form.base_fields[placeholder.slot].initial = placeholder.pk
             
     return form
Пример #3
0
 def formfield_for_admin(self, request, filter_func, **kwargs):
     defaults = {
         'label': capfirst(self.verbose_name),
         'help_text': self.help_text
     }
     defaults.update(kwargs)
     widget = PlaceholderPluginEditorWidget(request, filter_func)
     widget.choices = []
     return PlaceholderFormField(required=False, widget=widget, **defaults)
Пример #4
0
        def get_form(self, request, obj=None, **kwargs):
            """
            Get PageForm for the Page model and modify its fields depending on
            the request.
            """
            form = super(RealM2MPlaceholderAdmin, self).get_form(request, obj, **kwargs)
            
            for placeholder, slot in get_or_create_placeholders(obj, self.model):

                defaults = {'label': capfirst(slot), 'help_text': ''}
                defaults.update(kwargs)
                    
                widget = PlaceholderPluginEditorWidget(request, self.placeholder_plugin_filter)
                widget.choices = []
                    
                form.base_fields[slot] = CharField(widget=widget, required=False)
                
                if placeholder:   
                    form.base_fields[slot].initial = placeholder.pk
                    
            return form
Пример #5
0
 def formfield_for_admin(self, request, filter_func, **kwargs):
     defaults = {'label': capfirst(self.verbose_name), 'help_text': self.help_text}
     defaults.update(kwargs)
     widget = PlaceholderPluginEditorWidget(request, filter_func)
     widget.choices = []
     return PlaceholderFormField(required=False, widget=widget, **defaults)