Hello,
When I try to prefetch two has_many relationships i get an error saying:
"Prefetch not supported with accessor 'multi'". But if i try each one
individualy all gets well.

Here are my Noticia.pm relationships:

__PACKAGE__->has_many(
  assinaturas => 'Clix::Kiado::Schema::not_noticia_assinatura', 'noticia_id'
);
__PACKAGE__->has_many(
 comentarios => 'Clix::Kiado::Schema::Comentario',  'noticia_id'
);


When i do this query:

my $rs = $schema->resultset('Noticia')->search(
    { 'me.id' => 95 }, {
       prefetch  => [qw/assinaturas/],
       rows => 10,
    }
);

I get the following SELECT:

SELECT me.id, assinaturas.noticia_id, assinaturas.assinatura,
assinaturas.comentario, assinaturas.local, assinaturas.prioridade,
assinaturas.apagado FROM not_noticia me LEFT JOIN
not_noticia_assinatura assinaturas ON ( assinaturas.noticia_id = me.id
) WHERE ( me.apagado = ? AND me.id = ? ) ORDER BY me.data_criacao
DESC, assinaturas.noticia_id LIMIT 10: '0', '95'

If i try to prefetch to prefetch 'comentarios' instead the query is
retrieved too.
But if i change the prefetch to => [qw/assinaturas comentarios/]
I get the error:

SELECT me.id, assinaturas.noticia_id, assinaturas.assinatura,
assinaturas.comentario, assinaturas.local, assinaturas.prioridade,
assinaturas.apagado, comentarios.id, comentarios.noticia_id,
comentarios.seccao_id, comentarios.autor, comentarios.email,
comentarios.residencia, comentarios.data_insercao,
comentarios.data_aprovacao, comentarios.user_aprovacao,
comentarios.ver_email, comentarios.ver_autor,
comentarios.classificacao, comentarios.estado_id, comentarios.apagado
FROM not_noticia me LEFT JOIN not_noticia_assinatura assinaturas ON (
assinaturas.noticia_id = me.id ) LEFT JOIN not_comentario comentarios
ON ( comentarios.noticia_id = me.id ) WHERE ( me.apagado = ? AND me.id
= ? ) ORDER BY me.data_criacao DESC, assinaturas.noticia_id,
comentarios.noticia_id LIMIT 10: '0', '95'
DBIx::Class::ResultSet::next(): Prefetch not supported with accessor
'multi' at testes/teste_schema4.pl line 40

Am I doing something wrong, or is this a bug?

-- 
Jonas Alves

_______________________________________________
List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
Wiki: http://dbix-class.shadowcatsystems.co.uk/
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/
Searchable Archive: http://www.mail-archive.com/[email protected]/

Reply via email to