[Bast-commits] r3800 - in DBIx-Class/0.08/trunk: .
lib/DBIx/Class/Relationship
ash at dev.catalyst.perl.org
ash at dev.catalyst.perl.org
Wed Oct 3 21:00:33 GMT 2007
Author: ash
Date: 2007-10-03 21:00:32 +0100 (Wed, 03 Oct 2007)
New Revision: 3800
Modified:
DBIx-Class/0.08/trunk/Changes
DBIx-Class/0.08/trunk/lib/DBIx/Class/Relationship/ManyToMany.pm
Log:
Many-to-many relationships now warn if the utility methods would clash
Modified: DBIx-Class/0.08/trunk/Changes
===================================================================
--- DBIx-Class/0.08/trunk/Changes 2007-10-02 15:43:16 UTC (rev 3799)
+++ DBIx-Class/0.08/trunk/Changes 2007-10-03 20:00:32 UTC (rev 3800)
@@ -4,6 +4,8 @@
foreign and self parts the wrong way round in the condition
- ResultSetColumn::func() now returns all results if called in list
context; this makes things like func('DISTINCT') work as expected
+ - Many-to-many relationships now warn if the utility methods would
+ clash
0.08007 2007-09-04 19:36:00
- patch for Oracle datetime inflation (abram at arin.net)
Modified: DBIx-Class/0.08/trunk/lib/DBIx/Class/Relationship/ManyToMany.pm
===================================================================
--- DBIx-Class/0.08/trunk/lib/DBIx/Class/Relationship/ManyToMany.pm 2007-10-02 15:43:16 UTC (rev 3799)
+++ DBIx-Class/0.08/trunk/lib/DBIx/Class/Relationship/ManyToMany.pm 2007-10-03 20:00:32 UTC (rev 3800)
@@ -24,6 +24,13 @@
my $set_meth = "set_${meth}";
my $rs_meth = "${meth}_rs";
+ for ($add_meth, $remove_meth, $set_meth, $rs_meth) {
+ warn "***************************************************************************\n".
+ "The many-to-many relationship $meth is trying to create a utility method called $_. This will overwrite the existing method on $class. You almost certainly want to rename your method or the many-to-many relationship, as your method will not be callable (it will use the one from the relationship instead.) YOU HAVE BEEN WARNED\n".
+ "***************************************************************************\n"
+ if $class->can($_);
+ }
+
$rel_attrs->{alias} ||= $f_rel;
*{"${class}::${meth}_rs"} = sub {
More information about the Bast-commits
mailing list