Personal tools
You are here: Home > Tutoriais > Python/Zope/Plone > Controller Page Template - Parte IV (Action)
Document Actions

Controller Page Template - Parte IV (Action)

by Tânia Andrea last modified 2007-04-04 22:31
  • Se estiver usando no filesystem (com SVN por exemplo):
    1. Coloque a linha abaixo no seu metadata:
      [actions]
      action.success = traverse_to:string:MINHA_PAGINA_DE_ACTION
      
    2. E no arquivo MINHA_PAGINA_DE_ACTION.cpy coloque o código abaixo:
      ## Controller Python Script "MINHA_PAGINA_DE_ACTION"
      ##bind container=container
      ##bind context=context
      ##bind namespace=
      ##bind script=script
      ##bind state=state
      ##bind subpath=traverse_subpath
      ##parameters=
      ##title=
      ##
      
      request = context.REQUEST
      
      #pega do request
      nome = request.get('nome', None)
      idade = request.get('idade', None)
      
      #chama o .zsql
      context.MEU_ZSQL(nome=nome,idade=idade)
      
      #retorna mensagem de sucesso
      state.setNextAction('redirect_to:string:PAGINA_DE_RETORNO?portal_status_message=Informações cadastradas com sucesso')
      return state
      
  • Se estiver usando direto na ZMI:
    1. Na aba "Actions" do seu Controller Page Template, coloque:
      Status="success"
      Action="traverse_to"
      Argument="string:MINHA_PAGINA_DE_ACTION"
      
    2. E no seu arquivo Controller Python Script, MINHA_PAGINA_DE_ACTION, coloque o código abaixo:
      request = context.REQUEST
      #pega do request
      nome = request.get('nome')
      idade = request.get('idade')
      
      #chama o .zsql
      context.MEU_ZSQL(nome=nome,idade=idade)
      
      #retorna mensagem de sucesso
      state.setNextAction('redirect_to:string:PAGINA_DE_RETORNO?portal_status_message=Informações cadastradas com sucesso')
      return state