I'm trying to make a Preview function. I'm reading this blog, Django Admin Preview, but now I have the following error and I don't know what it means.
Traceback (most recent call last):
File "/home/user/webapps/django/lib/python2.5/django/core/handlers/base.py", line 92, in get_response
response = callback(request, *callback_args, **callback_kwargs)
TypeError: 'str' object is not callable
I'm lost..
Edit:
Thanks guys/gals, here is my view.py and url.py:
from diligencia.diligencias.views import preview
url(r'^admin/diligencias/diligencia/(?P<object_id>\d+)/preview/$','preview'),
(r'^admin/(.*)', admin.site.root),
from diligencia.diligencias.models import Diligencia
@staff_member_required
def preview(request, object_id):
return object_detail(request, object_id=object_id,queryset=Diligencia.objects.all(), template_object_name = 'diligencia_detail.html', )
The signature for the url function within a urlconf is like this:
def url(regex, view, kwargs=None, name=None, prefix='')
You are using positional parameters only, but are passing only regex, view and name. So Python thinks your third parameter is the kwargs dictionary, not the name.
Instead, do this:
url(r'^admin/diligencias/diligencia/(?P<object_id>\d+)/preview/$', name='preview'),
to pass the name as a kwarg so that Python recognises it properly.
I suspect your view isn't a function. Make sure the argument in your urls.py is a function that takes one parameter. Like :
import default
url(r'^s(?:ite)?/search$', default.search, name="search"),
And then you have in default.py
def search(request) :
# do stuff
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With