Re: [SQLObject] SQLite fails for binaries
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
|
From: Joshua R. <jos...@mi...> - 2003-09-07 02:22:25
|
On Sat, 06 Sep 2003 21:53:27 -0400
"Ian Bicking" <ia...@co...> wrote:
> image = (wherever you are getting images from)
> soinstance.image = image
> assert soinstance.image == image
All right, I added an assert to my wrapper function:
def set_img(filename, data, refpage):
encodedData = base64.encodestring(data)
newImage = Image.new(name = filename, content = encodedData, page = get_byname(refpage))
assert newImage.content == encodedData
and the assertion fails..
Here, I'll post the rest of the file:
from SQLObject import *
import base64
__connection__ = SQLiteConnection('db.db')
class record:
def __init__(self,name,content):
self.name=name
self.content=content
class Image(SQLObject):
name = StringCol(alternateID=True)
content = StringCol()
page = ForeignKey('Page')
class Page(SQLObject):
title = StringCol(alternateID=True)
content = StringCol()
image = MultipleJoin('Image')
Image.createTable(ifNotExists=True)
Page.createTable(ifNotExists=True)
def get_byname(name):
return Page.byTitle(name)
def get_search(name):
return Page.select(LIKE(Page.q.title,('%' + name + '%')))
def set_upd(rec,oldtitle):
Page.byTitle(oldtitle).set(title = rec.name, content = rec.content)
def set_new(rec):
Page.new(title = rec.name, content = rec.content)
def set_del(name):
Page.byTitle(name).destroySelf()
def del_img(name):
Image.byName(name).destroySelf()
def get_img(name):
return base64.decodestring(Image.byName(name).content)
def set_img(filename, data, refpage):
encodedData = base64.encodestring(data)
newImage = Image.new(name = filename, content = encodedData, page = get_byname(refpage))
assert newImage.content == encodedData
def get_imgsearch(name):
return Image.select(Image.q.name==name)
|