IS_IN_SET formulario customizado.

51 views
Skip to first unread message

Rafael Acorsi

unread,
May 10, 2013, 4:43:17 PM5/10/13
to web2py-us...@googlegroups.com
Seguinte galera, tenho o seguinte modelo:

Field('enable', 'integer', label=T('Enable'), requires = IS_IN_SET([('1',T('Enable')),('0',T('Disable'))]))

E tenho um formulario customizado.
Gostaria de sabe como criar o select contendo os valores que foram informados no IS_IN_SET do db.


Rafael Acorsi

unread,
May 10, 2013, 4:59:27 PM5/10/13
to web2py-us...@googlegroups.com
Completando informacoes nao gostaria de usar o form.custom.widget

Rafael Acorsi
--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você está recebendo esta mensagem porque se inscreveu no grupo "web2py-users-brazil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para web2py-users-br...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 

Rafael Acorsi

unread,
May 10, 2013, 6:10:02 PM5/10/13
to web2py-us...@googlegroups.com
Bom galera, resolvi de uma forma meio marreta.

{{=XML(
  SELECT(
    map(lambda c: OPTION(T(c[1]), _value=c[0] ), dict(paymentSettings.paypalenable.requires.options()).iteritems()),
    _id='paymentsettings_paypalenable', 
    _name='paypalenable', 
    _value=form.custom.dspval.paypalenable, 
    _class="generic-widget span6 select2")
)}}


Rafael Acorsi

Rafael Acorsi

unread,
May 16, 2013, 4:02:46 PM5/16/13
to web2py-us...@googlegroups.com
Olá pessoas,
Mexendo um pouco aqui e ali, descobrir uma forma mais clean de fazer o mesmo procedimento, segue:

from gluon.sqlhtml import OptionsWidget

enable = OptionsWidget.widget(db.pagamento.enable,form.custom.dspval.enable (antes disso tem um form recebendo um crud da tabela...), 
    _id = 'paymentsettings_paypalenable', 
    _name  = 'paypalenable', 
    _class = "generic-widget span6 select2")

Desta forma consigo customizar melhor o input.

Rafael Acorsi


Rafael Acorsi

Vinicius Assef

unread,
May 16, 2013, 6:15:41 PM5/16/13
to web2py-us...@googlegroups.com
Rafael, pra fazer desse novo jeito, esse código ficou no controller ou na view?

2013/5/16 Rafael Acorsi <rafael...@gmail.com>:

Rafael Acorsi

unread,
May 16, 2013, 6:33:25 PM5/16/13
to web2py-us...@googlegroups.com
Eu fiz no controller e passei via parâmetro pra view. Mas nada impede
fazer direto na view, porem por questão de padrão melhor mesmo no
controller.

Rafael Acorsi

Vinicius Assef

unread,
May 16, 2013, 9:52:45 PM5/16/13
to web2py-us...@googlegroups.com
É dessa parte que eu não gosto. Como os objetos devem ser mostrados
seria função da view determinar, não do controller. :-(


2013/5/16 Rafael Acorsi <rafael...@gmail.com>:

Rafael Acorsi

unread,
May 16, 2013, 10:01:09 PM5/16/13
to web2py-us...@googlegroups.com

Sem problemas, basta na view você certifica-se que tenha importado o OptionsWidget, daí basta colocar na view:

OptionsWidget.widget(pagamento.enable,form.custom.dspval.enable, 

    _id = 'pagamento_enable', 

    _name  = 'enable', 

    _class = "generic-widget span6 select2")



Rafael Acorsi
Reply all
Reply to author
Forward
0 new messages