Envio parcial de formulário (node) via ajax

37 views
Skip to first unread message

Thiago Régis

unread,
Jun 17, 2013, 11:56:37 AM6/17/13
to drup...@googlegroups.com
Meus amigos, boa tarde! Venho pedir mais uma ajuda aos que são mais focados em coding

Estou com uma necessidade de enviar partes de formulário de node. A ideia é que em determinados fieldgroups tenham um botão "Salvar" que submeterá (via ajax) apenas os campos que estão dentro deste fieldgroup... E o retorno deve ser somente nesses campos também (sucesso ou erro).

Considerando que talvez isso seja necessário para outras pessoas, eu resolvi começar a escrever um módulo do zero de forma mais genérica (para contribuir) e tenho boa parte da estrutura concluída (vejam o código). Ao instalar o módulo, uma nova opção aparecerá nos fieldgroups do tipo "fieldset" que, se marcada, adicionará um botão de submit ao final dele (no formulário). Além disso, estou usando o #limit_validation_errors para enviar apenas os campos desse fieldgroup.

Isso está funcionando quase perfeitamente, mas surgiram alguns pequenos problemas que não estou sabendo como resolver:
  1. Quando envia os dados, se a validação identificar algum erro, ele está retornando corretamente para o formulário marcando apenas o campo com erro e exibindo a mensagem dentro do fieldgroup (já que eu o defini como o wrapper do #ajax). Porém, se os dados são salvos com sucesso, está retornando a mensagem e repetindo outros campos do formulário (nesse exemplo, está repetindo o campo Título)
  2. Se os mesmos dados forem enviados mais de 1 vez, apertando o mesmo botão submit, está dando este erro.
  3. Quando eu habilito o botão "Salvar" para mais de 1 fieldgroup, mesmo que cada um tenha seu próprio #limit_validation_errors, está salvando os dados dos 2 fieldgroups :(

Alguém pode dar alguma ideia? Já fizeram isso antes (enviar parte do formulário via ajax)?

Agradeço antecipadamente ;)


Abraço!
Thiago Régis
@tregismoreira
http://thiagoregis.com
http://drupal-br.org

Thiago Régis

unread,
Jun 17, 2013, 1:49:56 PM6/17/13
to drup...@googlegroups.com
Pessoal, criei um repo no github pra facilitar quem quiser testar o módulo: https://github.com/tregismoreira/field_group_save_button

Acho que ele vai ser útil pra outras pessoas também :)

Abraço!
Thiago Régis
@tregismoreira
http://thiagoregis.com
http://drupal-br.org


Thiago Régis

unread,
Jul 18, 2013, 8:13:23 PM7/18/13
to drup...@googlegroups.com
Meus amigos, boa noite.

Atualizando esse post, caso alguém se interesse pelo projeto e queira ajudar: Com uma grande ajuda do Guilherme Lopes (@guilopes), que está trabalhando comigo no projeto, conseguimos resolver os problemas 2 e 3 relatados no primeiro email. Mas o problema 1 ainda persiste e está nos deixando de cabelos brancos :/

Alguém tem alguma dica para solucionar o problema? Agradeço antecipadamente ;)

O módulo está atualizado no repositório: https://github.com/tregismoreira/field_group_save_button


Abraço!
Thiago Régis
@tregismoreira
http://thiagoregis.com
http://drupal-br.org


Reply all
Reply to author
Forward
0 new messages