Nope, nicht wirklich. Hat sich aber eh erledigt, weil das Covers-Model besser
für meine Auflistung geeignet ist.
Michael Siebert schrieb:
müsste es nicht heissen
... HAVING count(assets.id)>1
?
Am 23.06.2008 um 20:30 schrieb Michael Kastner:
Hallo,
ich hänge gerade etwas fest.
Es gibt dises model:
class Product < ActiveRecord::Base
has_many :covers
has_many :assets, :through => :covers
...
end
Ich benötige für das model einen named scope, der mir nur solche
products liefert, die mindestens ein asset haben.
Meine Idee war das hier:
named_scope :with_assets,
:include => :assets,
:conditions => ['count(assets.id) > 1']
Aber da wird eine exception geworfen:
ActiveRecord::StatementInvalid: Mysql::Error: Invalid use of group
function: SELECT `products`.`id` AS t0_r0, `products`.`legacy_id` AS
t0_r1, `products`.`product_type_id` AS t0_r2,
`products`.`manufacturer_id` AS t0_r3, `products`.`active` AS t0_r4,
`products`.`created_at` AS t0_r5, `products`.`updated_on` AS t0_r6,
`products`.`name` AS t0_r7, `products`.`description` AS t0_r8,
`products`.`identity_key` AS t0_r9, `products`.`price` AS t0_r10,
`products`.`vat` AS t0_r11, `products`.`weight` AS t0_r12,
`products`.`comment` AS t0_r13, `products`.`subtitle` AS t0_r14,
`assets`.`id` AS t1_r0, `assets`.`name` AS t1_r1, `assets`.`extension`
AS t1_r2, `assets`.`content_type` AS t1_r3, `assets`.`image_width` AS
t1_r4, `assets`.`thumbnail_width` AS t1_r5, `assets`.`updated_on` AS
t1_r6, `assets`.`created_at` AS t1_r7, `assets`.`title` AS t1_r8,
`assets`.`description` AS t1_r9, `assets`.`comment` AS t1_r10 FROM
`products` LEFT OUTER JOIN `covers` ON (`products`.`id` =
`covers`.`product_id`) LEFT OUTER JOIN `assets` ON (`assets`.`id` =
`covers`.`asset_id`) WHERE (count(assets.id) > 1)
Ich sehe gerade nicht, wo mein Fehler liegt. Hat jemand vielleicht
einen Tip?
Viele Grüße und schon mal vielen Dank fürs lesen
Michael Kastner
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
---
Siebert WD
Michael Siebert
Trappenweg 6, 15749 Mittenwalde, Deutschland
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug