shoorick: (Default)
shoorick ([personal profile] shoorick) wrote2010-03-12 02:43 pm

Что это?!

Это я такое написал? Проще уж на обычном SQL писать...
$c->stash->{'checkpoints'} = [
    $c->model($MODEL)->search(
        {
            'stgroup_id.id'           => $student->stgroup_id->id,
            'checkresults.student_id' => [ $student->id, undef ],
        },
        {
            'select'   => [ \'me.name cpname', qw/me.id me.date max_ball/ ],
            'join'      => [
                'checkresults', {
                    'tss_id' => [
                        qw/stgroup_id subject_id/,
                        { 'teacher_id' => 'user_id' }
                    ],
                }
            ],
            '+columns'  => [
                qw/subject_id.name checkresults.ball/,
                qw/user_id.fname user_id.sname user_id.lname/,
            ],
#             '+as'       => [ qw/subject_name ball/ ],
            'order_by'  => [ qw/date/ ],
        },
    )
];

Re: Через это

[identity profile] shoorick.livejournal.com 2010-03-12 04:21 pm (UTC)(link)
Ну в данном примере — DBIx::Class.

Надежд не оправдал: простые запросы я и сам могу быстро писать, чтобы написать сложные — всё равно приходится много думать. А уж когда я увидел, как он вместо ожидаемого одного сложного запроса генерит сотню простых — и вовсе в нём разочаровался.
(deleted comment)

Re: Через это

[identity profile] shoorick.livejournal.com 2010-03-12 09:21 pm (UTC)(link)
Выкладывай! Интересно посмотреть.
Я свои лисапеды, относящиеся к БД, лучше не буду выкладывать — незачем пугать народ тем, что я писал тыщу лет назад (хотя да, оно до сих пор каким-то чудом ещё работает в нескольких сайтах).