Hi All,
in the api for has_many, under the :conditions option we see :
Specify the conditions that the associated objects must meet in
order to
be included as a WHERE SQL fragment, such as price > 5 AND name LIKE
‘B%’.
Record creations from the association are scoped if a hash is used.
has_manyhttp://www.railsbrain.com/api/rails-2.3.2/doc/index.html?a=M001885&name=has_many:posts,
:conditions => {:published => true}will create published posts with
@blog.posts.create or @blog.posts.build.
however, in the api for has_one under the :conditions option we see :
Specify the conditions that the associated object must meet in order
to
be included as a WHERE SQL fragment, such as rank = 5.
So, we can’t automatically scope associated has_one records by
conditions
like we can has_many. seems to me that the behavior should be the same
in
both situations.
I have a model with relationships like this
class ThingContainer < AR::Base
has_one :blue_thing, :class_name => “Thing”, :conditions => {:color =>
“blue”}
has_one :red_thing, :class_name => “Thing”, :conditions => {:color =>
“red”}
end
class Thing < AR::Base
belongs_to :thing_container
end
but when I call ThingContainer.build_blue_thing, it does not populate
the
color attribute. is this by design? or something that was simply left
out?
-C