Cara mas esta não é uma relação de n:n certo? O problema está no nome da tabela! Se for de 1:n uma categoria tem varios links, ai a tabela "links" teria que ter um campo categoria_id Se for de n:1 um link tem varias categorias, ai a tabela "categorias" teria que ter um campo link_id
No ORM só existe um nome de tabala como "categoria_link" se for de n:n, ;) Faz o teste! 2010/4/13 t0th <[email protected]> > Olá, > > a tabela categorias_links tem varios links > um link tem uma categoria_link (o banco está legal) > > como posso fazer isso com orm? > > fiz e dá o erro relatado acima! > > On 12 abr, 23:24, renan vaz <[email protected]> wrote: > > Isso msm! apenas links e não categorias_links! > > > > 2010/4/12 Gustavo Diogo <[email protected]> > > > > > Ou seria uma categoria tem varios links? > > > se for esse o caso, vc deveria fazer uma table categoria e outra links. > > > em links, vc teria categoria_id. > > > acho q isso resolveria. > > > > > t0th escreveu: > > > > > Olá, > > > > > não tem tabela pivot.. > > > uma categorias_links tem varios links, então não existe muito pra > > > muitos! > > > > > alguem pode me ajudaR? > > > > > abraço > > > > > On 12 abr, 15:16, Gustavo Diogo <[email protected]> <[email protected]> > wrote: > > > > > Algu�m respondeu? > > > > > Acho que falta informa��o. A tabela categoria_link parece ser uma > tabela > > > pivot. > > > Entao vc teria q fazer tipo > > > > > class Link_Model extends ORM > > > { > > > protected $has_many_and_belongs_to = array('categoria'); > > > ... > > > ... > > > > > T� certo? > > > > > t0th escreveu: > > > > > Ol�, > > > > > vai meu cen�rio: > > > > > Model Link: > > > > > <?php > > > defined('SYSPATH') or die('No direct script access.'); > > > > > class Link_Model extends ORM > > > { > > > protected $primary_key = 'id'; > > > protected $table_name = 'links'; > > > protected $belongs_to = array('categoria_link'); > > > protected $load_with = array('categoria_link'); > > > } > > > ?> > > > > > Model Categoria_Link: > > > <?php > > > defined('SYSPATH') or die('No direct script access.'); > > > > > class Categoria_Link_Model extends ORM > > > { > > > protected $table_name = 'categorias_links'; > > > protected $has_many = array('links'); > > > protected $foreign_key = array('links' => 'categorias_links_id'); > > > } > > > ?> > > > > > controller: $links = ORM::factory('Link')->find_all(); > > > > > erro: > > > There was an SQL error: Coluna 'links.link_id' desconhecida em 'on > > > clause' - SELECT `links`.*, `categoria_link`.`id` AS > > > `categoria_link:id`, `categoria_link`.`nome` AS `categoria_link:nome`, > > > `categoria_link`.`sef` AS `categoria_link:sef` FROM (`links`) LEFT > > > JOIN `categorias_links` AS `categoria_link` ON (`categoria_link`.`id` > > > = `links`.`link_id`) ORDER BY `links`.`id` ASC > > > > > o problema � que esse atributo link_id n�o existe em links... > > > > > alguem pode me ajudar? > > > > > obrigado e espero resposta > > > > > -- > > > > ------------------------------------------------------------------------ > > > Gustavo Diogo > > > Cel: (21) 8622-8236 > > > > > -- > > > ------------------------------ > > > Gustavo Diogo > > > Cel: (21) 8622-8236 > > > > > -- > > > 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]<kohana-php%[email protected]> > <kohana-php%[email protected]<kohana-php%[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]<kohana-php%[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.
