[Jifty-commit] r3911 - in Jifty-DBI/trunk: . lib/Jifty/DBI
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Thu Aug 16 15:59:17 EDT 2007
Author: trs
Date: Thu Aug 16 15:59:16 2007
New Revision: 3911
Modified:
Jifty-DBI/trunk/ (props changed)
Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm
Jifty-DBI/trunk/lib/Jifty/DBI/Schema.pm
Jifty-DBI/trunk/t/11schema_records.t
Log:
r26169 at zot: tom | 2007-08-16 15:58:56 -0400
Backup r3908 for now since it breaks existing code
Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm (original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm Thu Aug 16 15:59:16 2007
@@ -259,20 +259,11 @@
if ( $column->readable ) {
if ( UNIVERSAL::isa( $column->refers_to, "Jifty::DBI::Record" ) )
{
- if ($column->virtual) {
- $subref = sub {
- if ( @_ > 1 ) { Carp::carp "Value passed to column accessor. You probably want to use the mutator." }
- $_[0]->_to_record( $column_name,
- $_[0]->id );
- };
- }
- else {
- $subref = sub {
- if ( @_ > 1 ) { Carp::carp "Value passed to column accessor. You probably want to use the mutator." }
- $_[0]->_to_record( $column_name,
- $_[0]->__value($column_name) );
- };
- }
+ $subref = sub {
+ if ( @_ > 1 ) { Carp::carp "Value passed to column accessor. You probably want to use the mutator." }
+ $_[0]->_to_record( $column_name,
+ $_[0]->__value($column_name) );
+ };
} elsif (
UNIVERSAL::isa(
$column->refers_to, "Jifty::DBI::Collection"
Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Schema.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Schema.pm (original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Schema.pm Thu Aug 16 15:59:16 2007
@@ -346,9 +346,6 @@
# A one-to-one or one-to-many relationship is requested
if ( UNIVERSAL::isa( $refclass, 'Jifty::DBI::Record' ) ) {
- # Make this a virtual record reference if they set by
- $column->virtual(1) if defined $column->by and $column->by ne 'id';
-
# Handle *_id reference columns specially
if ( $name =~ /(.*)_id$/ ) {
my $aliased_as = $1;
Modified: Jifty-DBI/trunk/t/11schema_records.t
==============================================================================
--- Jifty-DBI/trunk/t/11schema_records.t (original)
+++ Jifty-DBI/trunk/t/11schema_records.t Thu Aug 16 15:59:16 2007
@@ -9,7 +9,7 @@
BEGIN { require "t/utils.pl" }
our (@available_drivers);
-use constant TESTS_PER_DRIVER => 74;
+use constant TESTS_PER_DRIVER => 67;
my $total = scalar(@available_drivers) * TESTS_PER_DRIVER;
plan tests => $total;
@@ -193,20 +193,8 @@
is($ph->phone, '7890');
is($phone_collection->next, undef);
}
-
- is($emp->favorite_color->id, undef, 'emp 1 has no favorite color yet');
- is($emp2->favorite_color->id, undef, 'emp 2 has no favorite color yet');
- my $color = TestApp::Color->new( handle => $handle );
- my $c_id = $color->create( employee => $emp, color => 'magenta' );
- ok($c_id, "Got an id for the new color: $c_id");
- $color->load($c_id);
- is($color->id, $c_id);
- is($emp->favorite_color->id, $c_id, 'emp fave id matches color id');
- $emp->favorite_color->set_color('cyan');
- is($emp->favorite_color->color, 'cyan', 'changed color to cyan');
- $color->load($c_id);
- is($color->color, 'cyan', 'changed the original too');
+
cleanup_schema( 'TestApp', $handle );
disconnect_handle( $handle );
@@ -228,14 +216,8 @@
id integer primary key,
employee integer NOT NULL,
phone varchar(18)
-)
-}, q{
-CREATE table colors (
- id integer primary key,
- employee integer NOT NULL,
- color varchar(8)
-)
-} ]
+) }
+]
}
sub schema_mysql {
@@ -250,12 +232,6 @@
employee integer NOT NULL,
phone varchar(18)
)
-}, q{
-CREATE TEMPORARY table colors (
- id integer AUTO_INCREMENT primary key,
- employee integer NOT NULL,
- color varchar(8)
-)
} ]
}
@@ -271,13 +247,7 @@
employee integer references employees(id),
phone varchar
)
-}, q{
-CREATE TEMPORARY table colors (
- id serial PRIMARY KEY,
- employee integer references employees(id),
- color varchar
-)
-}]
+} ]
}
package TestApp::PhoneCollection;
@@ -289,9 +259,6 @@
return $tab;
}
-package TestApp::Color;
-use base qw/Jifty::DBI::Record/;
-
package TestApp::Employee;
use base qw/Jifty::DBI::Record/;
@@ -300,7 +267,6 @@
use Jifty::DBI::Record schema {
column name => type is 'varchar';
column phones => references TestApp::PhoneCollection by 'employee';
- column favorite_color => references TestApp::Color by 'employee';
}
}
@@ -321,19 +287,5 @@
}
}
-package TestApp::Color;
-
-BEGIN {
- use Jifty::DBI::Schema;
- use Jifty::DBI::Record schema{
- column employee => references TestApp::Employee;
- column color =>
- type is 'varchar',
- valid_values are qw/
- white cyan magenta
- yellow green red black
- /; # don't like CGA? too bad
- }
-}
1;
More information about the Jifty-commit
mailing list