[Cascavel-pm] duvida relacionamento dbix-class

Eden Cardim edencardim em gmail.com
Segunda Abril 9 09:43:30 PDT 2007


On 4/9/07, Donato Azevedo <donatoaz em gmail.com> wrote:
> para o pessoal da lista que usa o dbix-class
>
> eu tenho a seguinte estrutura:
>
> package MyTasks::Schema::SupportRequest;
> MyTasks::Schema::SupportRequest->has_many("related_tasks",
> "MyTasks::Schema::Task", "support_request_id" );
>
> MyTasks::Schema::Task;
> MyTasks::Schema::Task->has_many('task_users' =>
> 'MyTasks::Schema::TaskUser', 'task_id');
> MyTasks::Schema::Task->many_to_many('users' => 'task_users', 'user');
>
> package MyTasks::Schema::TaskUser;
> MyTasks::Schema::TaskUser->belongs_to('user', 'MyTasks::Schema::User',
> 'user_id');
>
> eu preciso obter a partir de MyTasks::Schema::SupportRequest uma lista
> usuarios associados, ou seja, relacionar
> MyTasks::Schema::SupportRequest com MyTasks::Schema::User atraves de
> MyTasks::Schema::Task.
>
> alguem tem alguma ideia de como eu posso fazer isto?

<code>
# $support_request contém uma instância de MyTasks::Schema::SupportRequest
my @users = map { $_->users->all } $support_request->related_tasks->all;
</code>

A depender do seu problema, você pode implementar isso dentro de um
método na classe MyTasks::Schema::SupportRequest.

-- 
Eden Cardim
Instituto Baiano de Biotecnologia
Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas
Laboratório de Bioinformática
--
"you seem to think that 'close enough' is close enough...
please learn to be 'literal' around programming."
merlyn - on irc.freenode.net#perl


Mais detalhes sobre a lista de discussão Cascavel-pm