hi petr...

something like this...

#!/usr/bin/python

#
# test sqlobject
#
#
from sqlobject import *
import sys, os

print "foo \n"
t1 = 'mysql://lab:[EMAIL PROTECTED]/jfrank3'
sqlhub.processConnection = connectionForURI(t1)

print "end foo \n"

class foo(SQLObject):
        class sqlmeta:
                table = 'test'
                idName='id'
                idType=str
        aa =StringCol(length=5)
        id2 =StringCol(length=20)

        def _set_id(self):
                d = 'tikdsljg'
                self._SO_set_id(d)


tmp=foo(aa='qqq', id2='ffff')

tmp2=foo.selectBy(aa='qqq')
qq=tmp2[0]
print qq.id, "-- ", qq.aa 

print "mmmmmm \n"


with a test db schema of...
/*
#
# test the sqlobject app
#
*/
drop database if exists jfrank3;
create database jfrank3;
use jfrank3;

DROP TABLE IF EXISTS test;
CREATE TABLE test (
  id varchar(15) NOT NULL default '',
  aa varchar(5) default '',
  id2 varchar (20)  default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM DEFAULT CHARSET=latin1;

DROP TABLE IF EXISTS test2;
CREATE TABLE test2 (
  id varchar(15) NOT NULL default '',
  aa2 varchar(5) default '',
  primary key(id)
) TYPE=MyISAM DEFAULT CHARSET=latin1;

........
this is a continuation of my previous/initial test.

right now, when i run the test script.. i get the following traceback/err from 
the python interpreter..

[EMAIL PROTECTED] /]# ./sql2.py
foo

end foo

Traceback (most recent call last):
  File "./sql2.py", line 29, in ?
    tmp=foo(aa='qqq', id2='ffff')
  File 
"/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r3184-py2.4.egg/sqlobject/declarative.py",
 line 89, in _wrapper
    return fn(self, *args, **kwargs)
  File 
"/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r3184-py2.4.egg/sqlobject/main.py",
 line 1181, in __init__
    self._create(id, **kw)
  File 
"/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r3184-py2.4.egg/sqlobject/main.py",
 line 1212, in _create
    self._SO_finishCreate(id)
  File 
"/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r3184-py2.4.egg/sqlobject/main.py",
 line 1239, in _SO_finishCreate
    self._init(id)
  File 
"/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r3184-py2.4.egg/sqlobject/main.py",
 line 904, in _init
    self.id = id
TypeError: _set_id() takes exactly 1 argument (2 given)
[EMAIL PROTECTED] /]#



-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Petr Jakeš
Sent: Monday, December 31, 2007 5:49 PM
To: bruce
Cc: sqlobject-discuss@lists.sourceforge.net
Subject: Re: [SQLObject] sqlobject - _init question....


i'm playing (or trying to) around with sqlobject, and trying to create a 
class/obj, so that everytime the class is instantiated, a field in the class is 
set to a given value... 

is this possible?


Do you mean something like this?

class Book(SQLObject):
    name=StringCol(length=20, default="Bruce")
    addr=StringCol(length=20, default="Earthlink")
       
Book.createTable(ifNotExists=True) 
Book()
print Book.get(1).name


Happy New Year


Petr Jakes


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
sqlobject-discuss mailing list
sqlobject-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss

Reply via email to