Andre.. ajudou bastante.. porem tinha "algumas linhas amais". Não precisava do "for".... o valor de result já vinha como tuple. O código ficou assim:
class Conteudo(BaseContent): ... def consultaSQL(self): listVocabulary = [] conn = MySQLdb.connect (host = "localhost", user = "testuser", passwd = "testpass", db = "test") cursor = conn.cursor () cursor.execute ('SELECT * FROM tabela') result = cursor.fetchall() return result Obrigado. João P. Sinieghi --- Em zope-pt@yahoogrupos.com.br, André F Silva <[EMAIL PROTECTED]> escreveu > > Opa, João. > > No seu SelectField, você coloca o argumento palavra-chave para vocabulary apontando para um método da classe do seu conteúdo, por exemplo: > > SelectField('qualquer',required=1,vocabulary='consultaSQL', ....) > > No corpo da sua classe, você define o método. Como você quer que a lista venha do banco, você deverá fazê-lo via python. No caso do SQL, você deve importar o MySQLdb e o corpo da classe ficaria mais ou menos assim: > > import MySQLdb > . > . > . > class Conteudo(BaseContent): > ... > def consultaSQL(self): > listVocabulary = [] > conn = MySQLdb.connect (host = "localhost", > user = "testuser", > passwd = "testpass", > db = "test") > cursor = conn.cursor () > cursor.execute (query) > result = cursor.fetchall() > for i in result: > listVocabulary.append(result[0]) > return listVocabulary > > Espero que ajude. > > André FS > > João Paulo Sinieghi <[EMAIL PROTECTED]> escreveu: Bom dia a todos.. > > Criei um Produto no Archetypes com vários campos. Agora quero que um > destes campos (que é select) busque seus valores em uma tabela > específica no MySQL. Alguém sabe como posso fazer isto? > > Obs.: Todos este campos são gravados em uma tabela do MySQL usando o > "storage=MySQLSQLStorage()" > > Obrigado. > João Paulo Sinieghi > > > > > > > > --------------------------------- > Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! > Para enviar uma mensagem: zope-pt@yahoogrupos.com.br Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/zope-pt/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html