I know i can not directly register a form but i do not have any model
for Email. i just have plain form *forms.Form*
is there any other way to register Form with admin.
Thanks

On Mar 11, 3:03 am, Beres Botond <boton...@gmail.com> wrote:
> You cannot directly register a form with admin, you should be
> registering models
>
> from myapps.forms import MyModelForm
> from myapps.models import MyModel
>
> class MyModelAdmin(admin.ModelAdmin):
>      form = MyModelForm
>
> admin.site.register(MyModel, EmailAdmin)
>
> Also the form should be a ModelForm for that model.
>
> from django.forms import ModelForm
>
> # Create the form class.
> class MyModelForm(ModelForm):
>      class Meta:
>          model = MyModel
>
> Read the docs thoroughly, 
> especially:http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#modelformhttp://docs.djangoproject.com/en/1.1/ref/contrib/admin/#ref-contrib-a...
>
> On Mar 10, 10:28 pm, Praveen <praveen.python.pl...@gmail.com> wrote:
>
> > Hi
> > I have one form in forms.py
>
> > class EmailForm(forms.Form):
> >     recipient = forms.CharField(max_length=14, min_length=12,
> > widget=forms.TextInput(attrs=require))
> >     message = forms.CharField(max_length=140, min_length=1,
> > widget=forms.Textarea(attrs={'cols': 30, 'rows': 5}))
>
> > and my site url is
> > admin.autodiscover()
> > urlpatterns = patterns('',  (r'^admin/(.*)',
> > include(admin.site.urls)),)
>
> > now i want it to be shown on admin interface
>
> > I tried so far
> > First attempt
>
> > from myapps.forms import EmailForm
> > class EmailAdmin(admin.ModelAdmin):
> >      form = EmailForm
> > did not work Exception Value:
> > 'DeclarativeFieldsMetaclass' object is not iterable
>
> > Second attempt
> > and now i 
> > followedhttp://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contri...
> > but could not get help
>
> > class EmailAdmin(admin.ModelAdmin):
> >     def my_view(self,request):
> >         return admin_my_view(request,self)
>
> >     def get_urls(self):
> >         urls = super(SmsAdmin, self).get_urls()
> >         my_urls = patterns('',(r'^my_view/
> > $',self.admin_site.admin_view(self.my_view)))
> >         return my_urls + urls
>
> > def admin_my_view(request, model_admin):
> >     opts = model_admin.model._meta
> >     admin_site = model_admin.admin_site
> >     has_perm = request.user.has_perm(opts.app_label \
> >     + '.' + opts.get_change_permission())
> >     context = {'admin_site': admin_site.name,
> >     'title': "My Custom View",
> >     'opts': opts,
> >     'root_path': '/%s' % admin_site.root_path,
> >     'app_label': opts.app_label,
> >     'has_change_permission': has_perm}
> >     template = 'admin/demo_app/admin_my_view.html'
> >     return render_to_response(template,
> > context,context_instance=RequestContext(request))
> > admin.site.register(EmailForm,EmailAdmin)
>
> > and when i run server and type on browserhttp://localhost:8000/admin
> > and hit enter button
>
> > Exception Value:
> > 'DeclarativeFieldsMetaclass' object is not iterable
>
> > and second time just after first time when i again enter then it show
> > me the admin page but i can't see my EmailAdmin in admin intercae..
>
> > Just help me or suggest me any link.
>
> > Thanks

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to