Acho que o problema vai muito da arquitetura do sistema. Tive um caso onde o MyISAM e o delete ON Cascade seria interessante, porem impossivel. Mas eu preferi ajeitar a view para impedir o delete caso ainda existam registros na tabela relacionada.
Assim o user deleta consciente das consequencias. Ai vai da solucao que for mais viavel. Outro caso é o update ... ai, se for de varios é mais viavel usar Database ao invés de ORM. Em 24/01/2012 13:50, "felipe moraes" <[email protected]> escreveu: > Sabia ... tem sempre gente la, mas sempre abro o fonte e tento ajeitar > antes de pesquisar sobre .. kkk > > O codigo do kohana é tranquilo :) > Em 24/01/2012 13:24, "Vitor" <[email protected]> escreveu: > >> não sei se vocês sabiam, mas dá pra entrar em contato direto com os >> desenvolvedores do kohana no #kohana em irc.freenode.net >> >> 2012/1/24 Get <[email protected]> >> >>> Valeu. >>> >>> Usei DB::delete() mesmo. >>> >>> 2012/1/24 Vitor <[email protected]> >>> >>>> justificativa: >>>> 12:05] <snagnever> how can i use ORM to delete all entries of a model? >>>> [12:06] <d4rky> snagnever: you have to implement it on your own as >>>> Kohana is not a psychic and can't tell what you're going to do >>>> [12:06] <d4rky> snagnever: because delete_all could be implemented in >>>> two ways, one broken and one unefficient >>>> [12:07] <snagnever> d4rky what would be the broken and the what >>>> unefficient? >>>> [12:07] <d4rky> snagnever: the broken: return DB::delete() >>>> [12:08] <d4rky> snagnever: the unefficient: $x = >>>> orm::factory(model)->find_all(); foreach($x as $c) $c->delete(); >>>> [12:09] <snagnever> got; but why the old delete_all() is 'broken'? >>>> [12:09] <d4rky> kohana can't tell by it's own if you have overridden >>>> the delete() method in your model to for example unlink files associated >>>> with the model >>>> [12:09] <d4rky> so delete_all() is broken by definition >>>> [12:09] <snagnever> humn got it >>>> [12:09] <snagnever> makes sense >>>> >>>> >>>> 2012/1/24 Get <[email protected]> >>>> >>>>> Vitor... só ->delete() não funciona. >>>>> >>>>> Rodrigo... Poisé, vou dar uma olhada pra ver, mas acho que vou acabar >>>>> usando o $db->query() mesmo >>>>> >>>>> valeu >>>>> >>>>> >>>>> 2012/1/24 Rodrigo Oliveira <[email protected]> >>>>> >>>>>> Se você chamar o método IN e passar os ids não rola não? Ou então dá >>>>>> uma olhada como ele era feito nas outras versões e implementa ele. >>>>>> >>>>>> []'s >>>>>> >>>>>> 2012/1/24 Get <[email protected]> >>>>>> >>>>>>> Ae pessoal. >>>>>>> >>>>>>> Alguém sabe me dizer como fazer o delete_all() usando o ORM? >>>>>>> >>>>>>> Lembro que este método estava presente nas versões anteriores do >>>>>>> kohana, mas no 3+ não está disponível. >>>>>>> >>>>>>> Queria uma maneira de fazer isso sem precisar percorrer os >>>>>>> resultados para apagar um a um. >>>>>>> >>>>>>> Também não quero fazer direto no banco, tinha que ser usando o ORM >>>>>>> mesmo. >>>>>>> >>>>>>> Valeu >>>>>>> >>>>>>> @rafaelget >>>>>>> >>>>>>> -- >>>>>>> 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. >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Rodrigo Oliveira >>>>>> (21) 8747-0180 >>>>>> >>>>>> -- >>>>>> 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. >>>>> >>>> >>>> >>>> >>>> -- >>>> Vitor de Araujo Simões (Dalai/Snag) >>>> Estudante de Ciências da Computação - USP >>>> >>>> "Computation is the art of building solutions >>>> - at the cost of creating more problems" >>>> >>>> >>>> http://www.varaujo.com.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. >>>> >>> >>> -- >>> 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. >>> >> >> >> >> -- >> Vitor de Araujo Simões (Dalai/Snag) >> Estudante de Ciências da Computação - USP >> >> "Computation is the art of building solutions >> - at the cost of creating more problems" >> >> >> http://www.varaujo.com.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. >> > -- 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.
