Add search_rs to ResultSet and a new {$rel}_rs accessor to has_many.
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Relationship.pm
index 44ed65b..9e6d77d 100644 (file)
@@ -131,6 +131,8 @@ of C<has_a>.
     { prefetch => [qw/book/],
   });
   my @book_objs = $obj->books;
+  my $books_rs = $obj->books;
+  ( $books_rs ) = $obj->books_rs;
 
   $obj->add_to_books(\%col_data);
 
@@ -139,9 +141,14 @@ foreign class store the calling class's primary key in one (or more) of its
 columns. You should pass the name of the column in the foreign class as the
 $cond argument, or specify a complete join condition.
 
-As well as the accessor method, a method named C<< add_to_<relname> >>
-will also be added to your Row items, this allows you to insert new
-related items, using the same mechanism as in L<DBIx::Class::Relationship::Base/"create_related">.
+Three methods are created when you create a has_many relationship.  The first 
+method is the expected accessor method.  The second is almost exactly the same 
+as the accessor method but "_rs" is added to the end of the method name.  This 
+method works just like the normal accessor, except that it returns a resultset 
+no matter what, even in list context. The third method, named 
+C<< add_to_<relname> >>, will also be added to your Row items, this allows 
+you to insert new related items, using the same mechanism as in 
+L<DBIx::Class::Relationship::Base/"create_related">.
 
 If you delete an object in a class with a C<has_many> relationship, all
 related objects will be deleted as well. However, any database-level