En Thu, 10 Apr 2008 15:43:23 -0300, <[EMAIL PROTECTED]> escribió: > Hi, I have a little python webservice that I created, and in one of > the methods I need to store some binary data that was "posted"... I > want to do something like this, but it doesn't work. > > username = form.get("username", "") > message = form.get("message", "") > attachment = form.get("attachment", None) > ... > c.execute("""INSERT INTO Message (username, message, attachment) > VALUES (%s, %s, %s)""", (username, message, attachment)) > > > "attachment" is then some binary data that was posted, but when I look > in the mysql database, I see values for the attachment field which > look like: > > Field('attachment', '\x89PNG\r\n\x1a\n\x00\x00\... > > so it is storing something, just not my binary data (in this case a > picture). the attachment column is a longblob in mysql.
I assume you're using mod_python.util.FieldStorage. For normal (string) values, form.get returns a somewhat bizarre StringField that's a subclass of str itself. For files, it returns a Field object; it has a "file" attribute that you can use. See http://www.modpython.org/live/current/doc-html/pyapi-util-fstor-fld.html -- Gabriel Genellina -- http://mail.python.org/mailman/listinfo/python-list