On Tue, Jun 16, 2009 at 9:44 PM, Adam Royle<[email protected]> wrote:
>
> $this->set() doesn't return a value. so $transaction_amount_total will be
> null. Try something like this:
>
> $data = $this->Jurisdiction->Transaction->find('all', array(
> 'conditions' => array('Transaction.jurisdiction_id =' => $id),
> 'fields' => array('Transaction.id','SUM(Transaction.amount) AS Amount'))
> ));
>
> $transaction_amount_total = $data[0][0]['Amount'];
>
> $this->set('transaction_amount_total, $transaction_amount_total);
The last 2 lines can be simplified a wee bit:
$this->set('transaction_amount_total, $data[0][0]['Amount']);
Or:
$transaction_amount_total = $data[0][0]['Amount'];
$this->set(compact('transaction_amount_total'), false);
Note the false param for set. That's required when using compact() and
a var name with underscores. Otherwise, Cake will unleash Inflector on
it, making it camel-cased.
I have to confess that I'm a bit confused as to what the original
issue was in this thread. If it's just that Cake isn't putting the
calculated field under the modelName key in the $data array, you
should check out this tip:
http://teknoid.wordpress.com/2008/09/29/dealing-with-calculated-fields-in-cakephps-find/
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---