Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Consigo Salvar novo produto porém está apresentando mensagem "Deprecated (16384)..."

Boa noite pessoal,

Estou conseguindo salvar porém está aparecendo no topo do formulário o seguinte warning:

Deprecated (16384): Using key `action` is deprecated, use `url` directly instead. [CORE\src\View\Helper\FormHelper.php, line 361]

O meu arquivo do formulário (novo.ctp):

<?php
    echo $this->Form->create($produto,['action' => 'salva']); /*Abre um formulário de action "salva"*/
    /*Abaixo ele seta os input do formulário - o que ele receberá para gravar*/
    echo $this->Form->input('nome');
    echo $this->Form->input('preco');
    echo $this->Form->input('descricao');

    echo $this->Form->button('Salvar');/*Botão com o texto "Salvar"*/

    echo $this->Form->end(); /*Fecha o formulário*/
?>

Meu arquivo "ProdutosController.php":

    public function novo(){

        $produtosTable = TableRegistry::get('Produtos'); /*Referencia a tabela "Produtos"*/

        $produto = $produtosTable->newEntity(); /*manda pegar um registro vazio*/

        $this->set('produto', $produto);
    }

Meu arquivo index.ctp:

<?php 
    echo $this->Html->Link('Novo Produto', ['controller' => 'produtos', 'action' => 'novo']);
?>
2 respostas
solução!

Achei a solução!! Procurei no google! O seguinte... no 'action' do arquivo novo.ctp está obsoleto (deprecated) usar o 'action', então substituí por 'url' como a própria mensagem sugere! E funcionou! :-) Então ficou:

echo $this->Form->create($produto,['url' => 'salva']);

Não resolveu! Apesar de não aparecer mais o Warning, agora ele não salva mais! :-( Postei um novo tópico sobre o problema!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software