[Dbix-class] Issues with using the as=>[...] parameter

Lee Standen nom at standen.id.au
Fri Nov 3 01:56:38 GMT 2006


It's all good :P
I'm often good at trying to work out what people mean :)

We'll soon know if I was right, when the OP replies :)


Devin Austin wrote:
> Ah good thinking lee.  Didn't mean to detract from the original message, 
> i was just a bit confused.
> 
> On 11/2/06, *Lee Standen* < nom at standen.id.au 
> <mailto:nom at standen.id.au>> wrote:
> 
>     You can't use count() without group by in this example. (Unless I'm
>     mistaken).
> 
>      From what I'm seeing here, it sounds like what you really want is:
> 
>     my $user = $schema->resultset('User')->search( username => $username,
>     $password => $password )->count();
> 
>     Although I don't know why you just don't do:
> 
>     my $user = $schema->resultset('User')->find( username => $u );
>     if ($user->password eq $q->param('password')) {
>             ...
>     }
> 
>     That gives the added advantage of being able to get other information
>     about the user as well.
> 
> 
> 
> 
> 
>     Devin Austin wrote:
>      > so if i'm understanding this correctly, the following code:
>      >
>      >     my $user = $schema->resultset('User')->single(
>      >           {
>      >               username => $q->param('username'),
>      >               password => $q->param('password')
>      >           },
>      >           {
>      >             select => [
>      >               \'userid, COUNT(*) as is_authorized',
>      >             ],
>      >           }
>      >         );
>      >
>      >
>      > should produce "SELECT userid,  COUNT(*) as is_authorized FROM user
>      > WHERE username=? and password=?". Correct?
>      >
>      >
>      > On 11/2/06, *Brandon Black* <blblack at gmail.com
>     <mailto:blblack at gmail.com>
>      > <mailto:blblack at gmail.com <mailto:blblack at gmail.com>>> wrote:
>      >
>      >     On 11/2/06, John Napiorkowski < jjn1056 at yahoo.com
>     <mailto:jjn1056 at yahoo.com>
>      >     <mailto:jjn1056 at yahoo.com <mailto:jjn1056 at yahoo.com>>> wrote:
>      >      > Hi,
>      >      >
>      >      > Not sure if I am doing this correctly.  I am trying to
>      >      > order a result by the count of something but the 'as'
>      >      > parameter doesn't seem to do what I think it should
>      >      > do:
>      >
>      >     [...]
>      >
>      >      > Can anyone spot what I am doing wrong here?
>      >
>      >     From:
>      >    
>     http://search.cpan.org/dist/DBIx-Class/lib/DBIx/Class/ResultSet.pm#as :
>      >
>      >     Please note: This will NOT insert an AS employee_count into
>     the SQL
>      >     statement produced, it is used for internal access only. Thus
>      >     attempting to use the accessor in an order_by clause or
>     similar will
>      >     fail miserably.
>      >
>      >     To get around this limitation, you can supply literal SQL to
>     your
>      >     select attibute that contains the AS alias text, eg:
>      >
>      >       select => [\'myfield AS alias']
>      >
>      >     -- Brandon
>      >
>      >     _______________________________________________
>      >     List:
>     http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
>      >     Wiki: http://dbix-class.shadowcatsystems.co.uk/
>      >     <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/dbix-class@lists.rawmode.org/
>      >
>      >
>      >
>      >
>      > --
>      > timorperfectus.com <http://timorperfectus.com>
>     <http://timorperfectus.com <http://timorperfectus.com>> - web design to
>      > frightening perfection.
>      >
>      >
>      > One last song
>      > Given to an Angel's Son
>      > As soon as you were gone
>      > As soon as you were gone
>      >
>      >
>      >
>     ------------------------------------------------------------------------
> 
>      >
>      > _______________________________________________
>      > 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/
>     <http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/>
>      > Searchable Archive:
>     http://www.mail-archive.com/dbix-class@lists.rawmode.org/
> 
>     _______________________________________________
>     List: http://lists.rawmode.org/cgi-bin/mailman/listinfo/dbix-class
>     Wiki: http://dbix-class.shadowcatsystems.co.uk/
>     <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/dbix-class@lists.rawmode.org/
> 
> 
> 
> 
> -- 
> timorperfectus.com <http://timorperfectus.com> - web design to 
> frightening perfection.
> 
> 
> One last song
> Given to an Angel's Son
> As soon as you were gone
> As soon as you were gone
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> 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/dbix-class@lists.rawmode.org/



More information about the Dbix-class mailing list