Python "classobj" error

Go To StackoverFlow.com

1

I have this code and I couldn't run it because i get this error: "TypeError: 'classobj' object is not subscriptable" and here is my code:

import cgi
import customerlib

form=cgi.FieldStorage

history = customerlib.find(form["f_name"].value,form["l_name"].value)


print "Content-type: text/html"
print
print """<html>
  <head>
    <title>Purchase history</title>
  </head>
  <body>
    <h1>Purchase History</h1>"""

print "<p>you have a purchase history of:"
for i in history: "</p>"
   print"""  <body>
</html>"""

I have the customerlib file beside this file. Any idea how to fix it?

2012-04-04 22:48
by AliBZ


6

form=cgi.FieldStorage

FieldStorage is a class, not an object. You need to instantiate it to create a FieldStorage object:

form=cgi.FieldStorage()

It is erroring on form["f_name"] because form is currently an alias for the class of FieldStorage, not an object of type FieldStorage. By instantiating it, it's doing what you think it should be doing.

Check out the cgi module documentation for more detailed information on how to use the CGI module.

2012-04-04 22:51
by Donald Miner
Ads