Carlos,
então é a primeira coisa que sugeri, imagino que não ficou claro para você.

Vamos por partes, olhe novamente as referências que mandei.

Eu não costumo pendurar todas as características no modelo UML, ele não tem
suporte a algumas questões e lá na frente você vai precisar fazer alguma
coisa na mão e vai perder o sincrinismo inicial entre code e modelo.

O teu field fica algo assim:

StringField(
    name='url_video',
    default='o valor que vai preencher o campo na leitura do formulario de
criacao do objeto',
    Widget=StringWidget(
        ...
    )
)

Tenta por ai, veja se resolve teu problema.

Um abraço.

2009/7/22 chgcj <henri...@pgr.mpf.gov.br>

>
>
> Vamos lá... vou tentar explicar.
> No ArgoUML criei uma classe com o nome QuestaoJustica que é um programa de
> rádio que temos aqui na PGR.
> Essa classe têm os atributos resumo, descricao e urlAudio. Os atributos
> resumo e descricao estão ok. No atributo urlAudio gostaria que quando o
> usuário fosse inserir uma instancia do objeto QuestaoJustica já viesse
> previamente preenchido com um endereço de uma url padrão da PGR, como por
> exemplo
> http://midia.pgr.mpf.gov.br/radio/programas/questaojustica/qj2009/julho/programaDia22.mp3que
>  é o audio do Programa Questão de Justiça do dia 22 de julho de 2009.
> Gostaria simplesmente de montar essa url dinamicamente para que o usuário
> não precise digitar o caminho todo. Além disso o campo deve ser editável, ou
> seja, deve aparecer previamente preenchido com o caminho sugerido mas deve
> ser possível a edição deste campo.
> Agora ficou claro ????
> Estou usando ARGOUML e ARCHEGENXML para gerar esse produto.
>
> mais uma vez obrigado...
>
> Carlos henrique
>
> --- Em zope-pt@yahoogrupos.com.br <zope-pt%40yahoogrupos.com.br>, Rodrigo
> Castardo <rodrigocasta...@...> escreveu
> >
> > Fala Carlos,
> > bom entendi errado, pensei que fosse um novo content type.
> >
> > Na realidade não entendi ainda, mas vamos lá ... se você criou o objeto
> via
> > API Plone, você pode instanciar o objeto após a criação e editar, por
> > exemplo:
> >
> > context.invokeFactory('Seu Tipo',
> > id=uniq_id,
> > title=title,)
> >
> > context[uniq_id].edit(remoteUrl='http://www.pgr.mpf.gov.br')
> >
> > Onde uniq_id é o id que você utilizou para criar seu objeto.
> >
> > Agora se eu não entendi novamente, então explica melhor ;)
> >
> > Abraços.
> >
> > 2009/7/21 chgcj <henri...@...>
> >
> > >
> > >
> > > valeu Rodrigo...
> > > mas o que estou querendo fazer é simplesmente preencher um determinado
> > > campo de um tipo que criei com o resultado de script python. Como devo
> > > proceder para fazer isso ???
> > >
> > > desde já obrigado,
> > > Carlos Henrique
> > >
> > > --- Em zope-pt@yahoogrupos.com.br <zope-pt%40yahoogrupos.com.br><zope-pt%
> 40yahoogrupos.com.br>, Rodrigo
>
> > > Castardo <rodrigocastardo@> escreveu
> > >
> > > >
> > > > Fala Carlos,
> > > > no ArcheTypes você pode setar com o default (valor padrão) ou o
> > > > default_method (método que retorna o valor padrão), depende do caso.
> > > >
> > > > Dê uma olhada em: ArcheTypes/Field.py (é onde são definidos os fields
> que
> > > > podem ser usados).
> > > >
> > > > Lá você vai encontrar esse trecho de código:
> > > >
> > > > class Field(DefaultLayerContainer):
> > > > """
> > > > Extend `DefaultLayerContainer`.
> > > > Implements `IField` and `ILayerContainer` interfaces.
> > > > Class security = public with default access = allow.
> > > > Class attribute _properties is a dictionary containing all of a
> > > > field's property values.
> > > > """
> > > >
> > > > __implements__ = IField, ILayerContainer
> > > >
> > > > security = ClassSecurityInfo()
> > > >
> > > > _properties = {
> > > > 'old_field_name':None,
> > > > 'required' : False,
> > > > 'default' : None,
> > > > 'default_method' : None,
> > > > 'vocabulary' : (),
> > > > 'vocabulary_factory' : None,
> > > > 'enforceVocabulary' : False,
> > > > 'multiValued' : False,
> > > > 'searchable' : False,
> > > > 'isMetadata' : False,
> > > >
> > > > 'accessor' : None,
> > > > 'edit_accessor' : None,
> > > > 'mutator' : None,
> > > > 'mode' : 'rw',
> > > >
> > > > 'read_permission' : permissions.View,
> > > > 'write_permission' : permissions.ModifyPortalContent,
> > > >
> > > > 'storage' : AttributeStorage(),
> > > >
> > > > 'generateMode' : 'veVc',
> > > > 'force' : '',
> > > > 'type' : None,
> > > > 'widget': StringWidget,
> > > > 'validators' : (),
> > > > 'index' : None, # "KeywordIndex" or "<index_type>:schema"
> > > > 'index_method' : '_at_accessor', # method used for the index
> > > > # _at_accessor an _at_edit_accessor
> > > > # are the accessor and edit
> > > > accessor
> > > > 'schemata' : 'default',
> > > > 'languageIndependent' : False,
> > > > }
> > > >
> > > > E no ATContentTypes/content você encontra a classe que implementa o
> > > evento
> > > > do Plone, ele por exemplo seta a data de início (pelo
> default_method).
> > > >
> > > > Como pelo que pude entender você criou um novo tipo, pode pendurar o
> > > método
> > > > neste tipo e chamar no default_method.
> > > >
> > > > Bom, dá uma olhada nisso, vai te ajudar.
> > > >
> > > > Boa sorte, um abraço.
> > > >
> > > > 2009/7/17 chgcj <HENRIQUE@>
> > > >
> > > > >
> > > > >
> > > > > Pessoal,
> > > > > preciso coocar em um campo text o resultado de um script python.
> > > Coloquei
> > > > > no ARGOUML, em Valores Marcados (Tagged Values) o campo expression
> com
> > > o
> > > > > valor context.montaURL(). Aí criei um script python no zope dando
> um
> > > return
> > > > > 'teste' mas não funcionou.
> > > > >
> > > > > Alguém sabe como faze isso.
> > > > > Desde já obrigado.
> > > > >
> > > > > Carlos Henrique
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > >
> > > >
> > > >
> > > > --
> > > > Rodrigo Castardo
> > > > Liberiun
> > > > COO
> > > > rodrigocastardo@
> > > > +55 61 9123-7847
> > > > +55 61 3468-2662
> > > >
> > >
> > >
> > >
> >
> >
> >
> > --
> >
> >
> >
> > --
> > Rodrigo Castardo
> > Liberiun
> > COO
> > rodrigocasta...@...
> > +55 61 9123-7847
> > +55 61 3468-2662
> >
>
>  
>



-- 



-- 
Rodrigo Castardo
Liberiun
COO
rodrigocasta...@liberiun.com
+55 61 9123-7847
+55 61 3468-2662

Reply via email to