Method Filme::addAtribute() not found preciso de ajuda, estou tentando fazer o exemplo ensinado pelo autor do livro disponibilizado no youtube através do link: https://www.youtube.com/watch?v=ccnKCrhB1io. Mas estou tendo esse problema: Method Filme::addAtribute() not found. ...
LL
Method Filme::addAtribute() not found  
preciso de ajuda, estou tentando fazer o exemplo ensinado pelo autor do livro disponibilizado no youtube através do link: https://www.youtube.com/watch?v=ccnKCrhB1io. Mas estou tendo esse problema: Method Filme::addAtribute() not found.

 
  1. <?php
  2. // Arquivo de acesso ao banco
  3. // nome do arquivo = filmesMySQL.ini
  4. host = "127.0.0.1"
  5. name = "filmes"
  6. user = "root"
  7. pass = ""
  8. type = "mysql"
  9. ?>


 
  1. <?php
  2. // Classe filme
  3. class Filme extends TRecord{
  4. const TABLENAME = 'filme';
  5. const PRIMARYKEY = 'id';
  6. const IDPOLICY = 'max';
  7. public function __construct($id = NULL){
  8. parent::__construct($id);
  9. parent::addAtribute('titulo');
  10. parent::addAtribute('diretor');
  11. parent::addAtribute('id_suporte');
  12. parent::addAtribute('id_genero');
  13. parent::addAtribute('dt_lcto');
  14. parent::addAtribute('duracao');
  15. }
  16. }
  17. ?>




 
  1. <?php
  2. //Formulário
  3. class FilmeForm extends TPage{
  4. private $form;
  5. public function __construct(){
  6. parent::__construct();
  7. $this->form = new TQuickForm('form_filme');
  8. $this->form->setFormTitle('Filme');
  9. $this->form->class = 'tform';
  10. //$this->form->style = 'width: 500px';
  11. $id = new TEntry('id');
  12. $titulo = new TEntry ('titulo');
  13. $diretor = new TEntry ('diretor');
  14. $id_suporte = new TCombo('id_suporte');
  15. $id_genero = new TCombo('id_genero');
  16. $dt_lcto = new TDate('dt_lcto');
  17. $duracao = new TEntry('duracao');
  18. $id->setEditable(FALSE);
  19. $id_suporte->addItems( array(1=>'DVD', 2=>'Blu-ray') );
  20. $id_genero->addItems( array(1=>'Romance', 2=>'Ação', 3=>'Aventura'));
  21. $duracao->setMask('999');
  22. $this->form->addQuickField('ID', $id, 100);
  23. $this->form->addQuickField('Titulo', $titulo, 200);
  24. $this->form->addQuickField('Diretor', $diretor, 200);
  25. $this->form->addQuickField('Suporte', $id_suporte, 100);
  26. $this->form->addQuickField('Gênero', $id_genero, 100);
  27. $this->form->addQuickField('Lançamento', $dt_lcto, 100);
  28. $this->form->addQuickField('Duração', $duracao, 100);
  29. $save = new TAction( array($this, "onSave") );
  30. $this->form->addQuickAction('Salvar', $save, 'ico_save.png');
  31. parent::add($this->form);
  32. }
  33. public function onSave(){
  34. try{
  35. TTransaction::open('filmesMySQL'); //nome do arquivo que contem a conexão
  36. $object = $this->form->getData('Filme');
  37. $object->store();
  38. $this->form->setData( $object );
  39. new TMessage('info', 'Registro salvo com sucesso!');
  40. var_dump($object);
  41. TTransaction::close();
  42. }
  43. catch (Exception $e){
  44. new TMessage('error', $e->getMessage());
  45. TTransaction::rollback();
  46. }
  47. }
  48. }
  49. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (4)


AA

Bom dia.

Você já verificou se todos os campos declarados na classe TRecord existem na sua tabela? E se estão com o mesmo nome? Verificou o nome da sua tabela no banco de dados é igual a constante TABLENAME declarada na classe Filme?

 
  1. <?php
  2. parent::addAtribute('titulo');
  3. parent::addAtribute('diretor');
  4. parent::addAtribute('id_suporte');
  5. parent::addAtribute('id_genero');
  6. parent::addAtribute('dt_lcto');
  7. parent::addAtribute('duracao');
  8. ?>


Esse erro é gerado porque a classe TRecord tentou manipular um atributo e não encontrou equivalente no banco de dados.
NR

A função é addATTribute, com 2 T
GT

Você pode encontrar os bons filmes que deseja na lista de iptv
GT

Você pode encontrar os bons filmes que deseja na lista de iptv no https://techgara.com/lista-iptv