Se possivel, siga o padrao e coloque nomes de tabelas no plural, e chaves estrangeiras no singular Em 22/08/2012 11:21, "Paulo Duarte" <[email protected]> escreveu:
> Hm, ok. > Vou implementar isso... > > Você sabe se existe algum bug neste sentido no Kohana? > > Valeu! > > Em 22 de agosto de 2012 10:36, Bernardo - Sudeste Hosting < > [email protected]> escreveu: > >> Tente não usar >> $_has_many e $_belongs_to >> >> Crie uma método para pegar os dados >> >> ORM::factory('pessoa', $id)_>getEstadoNome(); >> >> >> Em 22 de agosto de 2012 10:14, Paulo Duarte <[email protected] >> > escreveu: >> >>> Pessoal, >>> alguém já passou pelo seguinte problema? >>> >>> Models >>> >>> class Model_Estado extends ORM { >>> protected $_table_name = 'estado'; >>> protected $_has_many = array( >>> 'pessoa' => array() >>> ); >>> } >>> >>> class Model_Pessoa extends ORM { >>> protected $_table_name = 'pessoa'; >>> protected $_belongs_to = array( >>> 'estado' => array() >>> ); >>> } >>> >>> Controllers >>> >>> class Controller_Inicial extends Kohana_Controller_Template { >>> >>> public function action_index() { >>> $id = $this->request->param('id', 0); >>> $objeto = ORM::factory('pessoa', $id); >>> >>> $this->template->content = View::factory('inicial/index') >>> ->bind('objeto', $objeto); >>> } >>> } >>> >>> class Controller_Pessoa extends Kohana_Controller_Template { >>> >>> public function action_index() { >>> $id = $this->request->param('id', 0); >>> $objeto = ORM::factory('pessoa', $id); >>> >>> $this->template->content = View::factory('pessoa/edita') >>> ->bind('objeto', $objeto); >>> } >>> } >>> >>> Views >>> >>> inicial/index >>> <?php echo $objeto->estado->nome ?> >>> >>> pessoa/edita >>> <?php echo $objeto->estado->nome ?> >>> >>> >>> Eu primeiramente havia implementado a view : inicial/index e tudo estava >>> funcionando. >>> Depois implementei a view : pessoa/edita e a principio tudo funcionando. >>> >>> De repente cliquei na view : inicial/index e me apareceu o >>> erro: ErrorException [ Notice ]: Trying to get property of non-object >>> Blz, tah dizendo que não tem $objeto->estado->nome. >>> O problema é que tem... Se eu for na outra view, mostra normal. >>> Se eu mandar mostrar $objeto->estado_id, mostra o ID. >>> >>> O sistema simplesmente não carrega o Model do Estado. >>> >>> Já fui no model Pessoa e coloquei o $_belongs_to: >>> 'estado' => array('model'=>'estado','foreign_key'=>'estado_id'), >>> >>> Não fez diferença... >>> Na view : pessoa/edita, tudo continua funcionando normalmente. >>> >>> Aí fiz o seguinte teste, criei no model da Pessoa o $_belongs_to: >>> 'uf' => array('model'=>'estado','foreign_key'=>'estado_id'), >>> >>> E funcionou. >>> Agora numa view eu chamo $objeto->estado->nome e na outra >>> $objeto->uf->nome... >>> Deve ser algo idiota ou até um bug do kohana (q acho mais dificil), mais >>> não consigo ver a solução. >>> >>> Alguém tem alguma idéia ou já passou por algo semelhante? >>> >>> Valeu! >>> >>> -- >>> Atenciosamente, >>> >>> >>> *Paulo Duarte* >>> Inteligência Web - Comunicação e Sistemas >>> >>> Fone: (48) 3028.5141 / 8426.3629 >>> E-mail: [email protected] >>> Skype: paulo.iw >>> >>> >>> ------------------------------------------------------------------------------------------- >>> Aviso de confidencialidade: >>> Esta mensagem da Empresa IW - Inteligência Web Comunicação e Sistemas, >>> empresa privada, é enviada exclusivamente a seu destinatário e pode conter >>> informações confidenciais, protegidas por sigilo profissional. Sua >>> utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se >>> você a recebeu indevidamente, queira, por gentileza, reenviá-la ao >>> emitente, esclarecendo o equívoco. >>> >>> -- >>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >>> Php" dos Grupos do Google. >>> Para postar neste grupo, envie um e-mail para >>> [email protected]. >>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>> [email protected]. >>> Para obter mais opções, visite esse grupo em >>> http://groups.google.com/group/kohana-php?hl=pt-BR. >>> >> >> >> >> -- >> Atenciosamente, >> Bernardo Sepulveda de Castro >> ------- ------- ------- -------- -------- -------- >> *Sudeste Hosting...* >> Ideias e Soluções Web >> www.sudestehosting.com.br >> (21)3305-3105 >> >> -- >> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >> Php" dos Grupos do Google. >> Para postar neste grupo, envie um e-mail para [email protected] >> . >> Para cancelar a inscrição nesse grupo, envie um e-mail para >> [email protected]. >> Para obter mais opções, visite esse grupo em >> http://groups.google.com/group/kohana-php?hl=pt-BR. >> > > > > -- > Atenciosamente, > > > *Paulo Duarte* > Inteligência Web - Comunicação e Sistemas > > Fone: (48) 3028.5141 / 8426.3629 > E-mail: [email protected] > Skype: paulo.iw > > > ------------------------------------------------------------------------------------------- > Aviso de confidencialidade: > Esta mensagem da Empresa IW - Inteligência Web Comunicação e Sistemas, > empresa privada, é enviada exclusivamente a seu destinatário e pode conter > informações confidenciais, protegidas por sigilo profissional. Sua > utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se > você a recebeu indevidamente, queira, por gentileza, reenviá-la ao > emitente, esclarecendo o equívoco. > > -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana > Php" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para [email protected]. > Para cancelar a inscrição nesse grupo, envie um e-mail para > [email protected]. > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/kohana-php?hl=pt-BR. > -- Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para postar neste grupo, envie um e-mail para [email protected]. Para cancelar a inscrição nesse grupo, envie um e-mail para [email protected]. Para obter mais opções, visite esse grupo em http://groups.google.com/group/kohana-php?hl=pt-BR.
