[SP-pm] Catalyst DBIx -> lista alguns campos

Renato Santos renato.cron at gmail.com
Tue Aug 21 04:24:18 PDT 2012


2012/8/21 Jose Nilton <jniltinho at gmail.com>

> Assim funcionou,
>
> Na
> Myapp/lib/Schema/Users.pm
>
> Coloquei:
>
>
> sub retorna_hora_do_banco {
>     my ($self) = @_;
>
>         return "Ola mundo";
>
> }
>
>
> No controller:
>
> my $olaMundo = $c->model('Schema::Users')->retorna_hora_do_banco();
>
>
>  $c->log->debug("Debug App: ".$olaMundo);
>
>
> Como coloco alguma consulta SQL na função retorna_hora_do_banco ?
>
>  $self->storage->dbh->selectrow_hashref( "select current_time() as foo",
                undef, @args );

> Pois queria colocar algumas consultas e retornar o array já convertido em
> json
>
>  Você quer dizer retornar em array e converter pra JSON no
controller->view ! não troquemos o lugar das coisas!

>
>
>
> Em 20 de agosto de 2012 23:41, Renato Santos <renato.cron at gmail.com>escreveu:
>
> mas o Model *!=* Schema..
>>
>> "Can't locate object method "retorna_hora_do_banco" via package
>> "DBIx::Class::ResultSet"
>> vc tentou $resultset->retorna_hora_do_banco
>>
>> deve ser: $resultset->result_source->schema->retorna_hora_do_banco(..)
>>
>> isso pois o Model só existe no contexto catalyst, e o schema serve
>> justamente para vc poder usar o schema do banco em qualquer applicação.
>>
>>
>>
>> 2012/8/20 Jose Nilton <jniltinho at gmail.com>
>>
>>> Opa Leonardo, desse modo funcionou,
>>>
>>> Essa era a minha logica no primeiro post.
>>>
>>>
>>> Em 20 de agosto de 2012 18:31, Leonardo Ruoso <leonardo at ruoso.com>escreveu:
>>>
>>> Veja que você está chamando o método retorna_hora_do_banco de um
>>>> ResultSet, que deve mapear uma tabela no DB. Eu acho que um método como
>>>> retorna_hora_do_banco poderia estar no seu Model, provavelmente chamado DB
>>>> :-) Eu não me lembro se há um acessor default para retornar a hora do
>>>> banco, acho que não, mas meu primeiro impulso seria colocar esse método no
>>>> seu Model responsável pelo acesso ao DB e chamá-lo desse Model e não de um
>>>> ResultSet.
>>>>
>>>> Em 20 de agosto de 2012 18:24, Jose Nilton <jniltinho at gmail.com>escreveu:
>>>>
>>>>
>>>>> Fiz esse teste:
>>>>>
>>>>> "Can't locate object method "retorna_hora_do_banco" via package
>>>>> "DBIx::Class::ResultSet"
>>>>>
>>>>>
>>>>> sub retorna_hora_do_banco {
>>>>>     my ($self) = @_;
>>>>>
>>>>>         return "Ola mundo";
>>>>>
>>>>> }
>>>>>
>>>>>
>>>>> Coloquei no arquivo Myapp/lib/Schema/Schema.pm
>>>>>
>>>>>
>>>>>
>
>
> --
> .................................................................
>   "Com Deus todas as coisas são possíveis"
>
> =begin disclaimer
>    Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


-- 
Saravá,
Renato CRON
http://www.renatocron.com/blog/
@renato_cron <http://twitter.com/#!/renato_cron>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20120821/2db9e4aa/attachment-0001.html>


More information about the SaoPaulo-pm mailing list