| ... | ... |
@@ -61,7 +61,7 @@ sub AUTOLOAD {
|
| 61 | 61 |
return $self->$helper(@_); |
| 62 | 62 |
} |
| 63 | 63 |
|
| 64 |
-sub auto_filter {
|
|
| 64 |
+sub apply_filter {
|
|
| 65 | 65 |
my $self = shift; |
| 66 | 66 |
|
| 67 | 67 |
$self->{auto_filter} ||= {};
|
| ... | ... |
@@ -238,7 +238,7 @@ sub create_query {
|
| 238 | 238 |
} |
| 239 | 239 |
|
| 240 | 240 |
our %VALID_DELETE_ARGS |
| 241 |
- = map { $_ => 1 } qw/auto_filter_table table where append filter allow_delete_all/;
|
|
| 241 |
+ = map { $_ => 1 } qw/table where append filter allow_delete_all/;
|
|
| 242 | 242 |
|
| 243 | 243 |
sub delete {
|
| 244 | 244 |
my ($self, %args) = @_; |
| ... | ... |
@@ -256,11 +256,6 @@ sub delete {
|
| 256 | 256 |
my $filter = $args{filter};
|
| 257 | 257 |
my $allow_delete_all = $args{allow_delete_all};
|
| 258 | 258 |
|
| 259 |
- my $auto_filter_table = exists $args{auto_filter_table}
|
|
| 260 |
- ? $args{auto_filter_table}
|
|
| 261 |
- : [$table]; |
|
| 262 |
- $auto_filter_table ||= []; |
|
| 263 |
- |
|
| 264 | 259 |
# Where keys |
| 265 | 260 |
my @where_keys = keys %$where; |
| 266 | 261 |
|
| ... | ... |
@@ -284,7 +279,7 @@ sub delete {
|
| 284 | 279 |
# Execute query |
| 285 | 280 |
my $ret_val = $self->execute( |
| 286 | 281 |
$source, param => $where, filter => $filter, |
| 287 |
- auto_filter_table => $auto_filter_table); |
|
| 282 |
+ table => $table); |
|
| 288 | 283 |
|
| 289 | 284 |
return $ret_val; |
| 290 | 285 |
} |
| ... | ... |
@@ -293,7 +288,7 @@ sub delete_all { shift->delete(allow_delete_all => 1, @_) }
|
| 293 | 288 |
|
| 294 | 289 |
sub DESTROY { }
|
| 295 | 290 |
|
| 296 |
-our %VALID_EXECUTE_ARGS = map { $_ => 1 } qw/param filter auto_filter_table/;
|
|
| 291 |
+our %VALID_EXECUTE_ARGS = map { $_ => 1 } qw/param filter table/;
|
|
| 297 | 292 |
|
| 298 | 293 |
sub execute{
|
| 299 | 294 |
my ($self, $query, %args) = @_; |
| ... | ... |
@@ -312,8 +307,10 @@ sub execute{
|
| 312 | 307 |
|
| 313 | 308 |
# Auto filter |
| 314 | 309 |
my $auto_filter = {};
|
| 315 |
- my $auto_filter_tables = $args{auto_filter_table} || [];
|
|
| 316 |
- foreach my $table (@$auto_filter_tables) {
|
|
| 310 |
+ my $tables = $args{table} || [];
|
|
| 311 |
+ $tables = [$tables] |
|
| 312 |
+ unless ref $tables eq 'ARRAY'; |
|
| 313 |
+ foreach my $table (@$tables) {
|
|
| 317 | 314 |
$auto_filter = {
|
| 318 | 315 |
%$auto_filter, |
| 319 | 316 |
%{$self->{auto_filter}{in}->{$table} || {}}
|
| ... | ... |
@@ -324,7 +321,10 @@ sub execute{
|
| 324 | 321 |
my $filter = $args{filter} || $query->filter || {};
|
| 325 | 322 |
foreach my $column (keys %$filter) {
|
| 326 | 323 |
my $fname = $filter->{$column};
|
| 327 |
- unless (ref $fname eq 'CODE') {
|
|
| 324 |
+ if (!defined $fname) {
|
|
| 325 |
+ $filter->{$column} = undef;
|
|
| 326 |
+ } |
|
| 327 |
+ elsif (ref $fname ne 'CODE') {
|
|
| 328 | 328 |
croak qq{"$fname" is not registered"}
|
| 329 | 329 |
unless exists $self->filters->{$fname};
|
| 330 | 330 |
|
| ... | ... |
@@ -347,7 +347,7 @@ sub execute{
|
| 347 | 347 |
|
| 348 | 348 |
# Auto in filter |
| 349 | 349 |
my $auto_in_filter = {};
|
| 350 |
- foreach my $table (@$auto_filter_tables) {
|
|
| 350 |
+ foreach my $table (@$tables) {
|
|
| 351 | 351 |
$auto_in_filter = {
|
| 352 | 352 |
%$auto_filter, |
| 353 | 353 |
%{$self->{auto_filter}{in}{$table} || {}}
|
| ... | ... |
@@ -384,7 +384,7 @@ sub expand {
|
| 384 | 384 |
} |
| 385 | 385 |
|
| 386 | 386 |
our %VALID_INSERT_ARGS = map { $_ => 1 } qw/table param append
|
| 387 |
- filter auto_filter_table/; |
|
| 387 |
+ filter/; |
|
| 388 | 388 |
sub insert {
|
| 389 | 389 |
my ($self, %args) = @_; |
| 390 | 390 |
|
| ... | ... |
@@ -400,11 +400,6 @@ sub insert {
|
| 400 | 400 |
my $append = $args{append} || '';
|
| 401 | 401 |
my $filter = $args{filter};
|
| 402 | 402 |
|
| 403 |
- my $auto_filter_table = exists $args{auto_filter_table}
|
|
| 404 |
- ? $args{auto_filter_table}
|
|
| 405 |
- : [$table]; |
|
| 406 |
- $auto_filter_table ||= []; |
|
| 407 |
- |
|
| 408 | 403 |
# Insert keys |
| 409 | 404 |
my @insert_keys = keys %$param; |
| 410 | 405 |
|
| ... | ... |
@@ -418,7 +413,7 @@ sub insert {
|
| 418 | 413 |
$source, |
| 419 | 414 |
param => $param, |
| 420 | 415 |
filter => $filter, |
| 421 |
- auto_filter_table => $auto_filter_table |
|
| 416 |
+ table => $table |
|
| 422 | 417 |
); |
| 423 | 418 |
|
| 424 | 419 |
return $ret_val; |
| ... | ... |
@@ -467,7 +462,7 @@ sub register_filter {
|
| 467 | 462 |
} |
| 468 | 463 |
|
| 469 | 464 |
our %VALID_SELECT_ARGS |
| 470 |
- = map { $_ => 1 } qw/auto_filter_table table column where append relation filter/;
|
|
| 465 |
+ = map { $_ => 1 } qw/table column where append relation filter/;
|
|
| 471 | 466 |
|
| 472 | 467 |
sub select {
|
| 473 | 468 |
my ($self, %args) = @_; |
| ... | ... |
@@ -486,10 +481,6 @@ sub select {
|
| 486 | 481 |
my $relation = $args{relation};
|
| 487 | 482 |
my $append = $args{append};
|
| 488 | 483 |
my $filter = $args{filter};
|
| 489 |
- |
|
| 490 |
- my $auto_filter_table = exists $args{auto_filter_table}
|
|
| 491 |
- ? $args{auto_filter_table}
|
|
| 492 |
- : $tables; |
|
| 493 | 484 |
|
| 494 | 485 |
# Source of SQL |
| 495 | 486 |
my $source = 'select '; |
| ... | ... |
@@ -545,7 +536,7 @@ sub select {
|
| 545 | 536 |
# Execute query |
| 546 | 537 |
my $result = $self->execute( |
| 547 | 538 |
$source, param => $param, filter => $filter, |
| 548 |
- auto_filter_table => $auto_filter_table); |
|
| 539 |
+ table => $tables); |
|
| 549 | 540 |
|
| 550 | 541 |
return $result; |
| 551 | 542 |
} |
| ... | ... |
@@ -586,7 +577,7 @@ sub txn_scope {
|
| 586 | 577 |
} |
| 587 | 578 |
|
| 588 | 579 |
our %VALID_UPDATE_ARGS |
| 589 |
- = map { $_ => 1 } qw/auto_filter_table table param
|
|
| 580 |
+ = map { $_ => 1 } qw/table param
|
|
| 590 | 581 |
where append filter allow_update_all/; |
| 591 | 582 |
|
| 592 | 583 |
sub update {
|
| ... | ... |
@@ -606,11 +597,6 @@ sub update {
|
| 606 | 597 |
my $filter = $args{filter};
|
| 607 | 598 |
my $allow_update_all = $args{allow_update_all};
|
| 608 | 599 |
|
| 609 |
- my $auto_filter_table = exists $args{auto_filter_table}
|
|
| 610 |
- ? $args{auto_filter_table}
|
|
| 611 |
- : [$table]; |
|
| 612 |
- $auto_filter_table ||= []; |
|
| 613 |
- |
|
| 614 | 600 |
# Update keys |
| 615 | 601 |
my @update_keys = keys %$param; |
| 616 | 602 |
|
| ... | ... |
@@ -656,7 +642,7 @@ sub update {
|
| 656 | 642 |
# Execute query |
| 657 | 643 |
my $ret_val = $self->execute($source, param => $param, |
| 658 | 644 |
filter => $filter, |
| 659 |
- auto_filter_table => $auto_filter_table); |
|
| 645 |
+ table => $table); |
|
| 660 | 646 |
|
| 661 | 647 |
return $ret_val; |
| 662 | 648 |
} |
| ... | ... |
@@ -981,32 +967,28 @@ C<connect()> method use this value to connect the database. |
| 981 | 967 |
L<DBIx::Custom> inherits all methods from L<Object::Simple> |
| 982 | 968 |
and implements the following new ones. |
| 983 | 969 |
|
| 984 |
-=head2 C<(experimental) auto_filter > |
|
| 970 |
+=head2 C<(experimental) apply_filter > |
|
| 985 | 971 |
|
| 986 |
- $dbi->auto_filter( |
|
| 972 |
+ $dbi->apply_filter( |
|
| 987 | 973 |
$table, |
| 988 |
- [$column1, $bind_filter1, $fetch_filter1], |
|
| 989 |
- [$column2, $bind_filter2, $fetch_filter2], |
|
| 990 |
- [...], |
|
| 974 |
+ $column1 => {in => $infilter1, out => $outfilter1}
|
|
| 975 |
+ $column2 => {in => $infilter2, out => $outfilter2}
|
|
| 976 |
+ ..., |
|
| 991 | 977 |
); |
| 992 | 978 |
|
| 993 |
-C<auto_filter> is automatically filter for columns of table. |
|
| 979 |
+C<apply_filter> is automatically filter for columns of table. |
|
| 994 | 980 |
This have effect C<insert>, C<update>, C<delete>. C<select> |
| 995 | 981 |
and L<DBIx::Custom::Result> object. but this has'nt C<execute> method. |
| 996 | 982 |
|
| 997 |
-If you want to have effect <execute< method, use C<auto_filter_table> |
|
| 983 |
+If you want to have effect <execute< method, use C<table> |
|
| 998 | 984 |
arguments. |
| 999 | 985 |
|
| 1000 | 986 |
$result = $dbi->execute( |
| 1001 | 987 |
"select * from table1 where {= key1} and {= key2};",
|
| 1002 | 988 |
param => {key1 => 1, key2 => 2},
|
| 1003 |
- auto_filter_table => ['table1'] |
|
| 989 |
+ table => ['table1'] |
|
| 1004 | 990 |
); |
| 1005 | 991 |
|
| 1006 |
-B<Example:> |
|
| 1007 |
- |
|
| 1008 |
- $dbi->auto_filter('book', 'sale_date', 'to_date', 'date_to');
|
|
| 1009 |
- |
|
| 1010 | 992 |
=head2 C<begin_work> |
| 1011 | 993 |
|
| 1012 | 994 |
$dbi->begin_work; |
| ... | ... |
@@ -554,7 +554,7 @@ $dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 554 | 554 |
$dbi->execute($CREATE_TABLE->{0});
|
| 555 | 555 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 556 | 556 |
$dbi->register_filter(three_times => sub { $_[0] * 3});
|
| 557 |
-$dbi->auto_filter( |
|
| 557 |
+$dbi->apply_filter( |
|
| 558 | 558 |
'table1', ['key1', 'twice', 'twice'], ['key2', 'three_times', 'three_times']); |
| 559 | 559 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2});
|
| 560 | 560 |
$result = $dbi->execute($SELECT_SOURCES->{0});
|
| ... | ... |
@@ -564,32 +564,10 @@ is_deeply($row, {key1 => 2, key2 => 6}, "$test : insert");
|
| 564 | 564 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 565 | 565 |
$dbi->execute($CREATE_TABLE->{0});
|
| 566 | 566 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 567 |
-$dbi->register_filter(three_times => sub { $_[0] * 3});
|
|
| 568 |
-$dbi->auto_filter( |
|
| 569 |
- 'table1', ['key1', 'twice', 'twice'], ['key2', 'three_times', 'three_times']); |
|
| 570 |
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, auto_filter_table => undef);
|
|
| 571 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 572 |
-$row = $result->fetch_hash_first; |
|
| 573 |
-is_deeply($row, {key1 => 1, key2 => 2}, "$test : insert disabe auto_filter_table 1");
|
|
| 574 |
- |
|
| 575 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 576 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 577 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 578 |
-$dbi->register_filter(three_times => sub { $_[0] * 3});
|
|
| 579 |
-$dbi->auto_filter( |
|
| 580 |
- 'table1', ['key1', 'twice', 'twice'], ['key2', 'three_times', 'three_times']); |
|
| 581 |
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, auto_filter_table => []);
|
|
| 582 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 583 |
-$row = $result->fetch_hash_first; |
|
| 584 |
-is_deeply($row, {key1 => 1, key2 => 2}, "$test : insert disabe auto_filter_table 2");
|
|
| 585 |
- |
|
| 586 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 587 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 588 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 589 |
-$dbi->auto_filter( |
|
| 567 |
+$dbi->apply_filter( |
|
| 590 | 568 |
'table1', ['key1', 'twice', 'twice'] |
| 591 | 569 |
); |
| 592 |
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, auto_filter_table => undef);
|
|
| 570 |
+$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, filter => {key1 => undef});
|
|
| 593 | 571 |
$dbi->update(table => 'table1', param => {key1 => 2}, where => {key2 => 2});
|
| 594 | 572 |
$result = $dbi->execute($SELECT_SOURCES->{0});
|
| 595 | 573 |
$row = $result->fetch_hash_first; |
| ... | ... |
@@ -598,34 +576,10 @@ is_deeply($row, {key1 => 4, key2 => 2}, "$test : update");
|
| 598 | 576 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 599 | 577 |
$dbi->execute($CREATE_TABLE->{0});
|
| 600 | 578 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 601 |
-$dbi->auto_filter( |
|
| 602 |
- 'table1', ['key1', 'twice', 'twice'] |
|
| 603 |
-); |
|
| 604 |
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, auto_filter_table => undef);
|
|
| 605 |
-$dbi->update(table => 'table1', param => {key1 => 2}, where => {key2 => 2}, auto_filter_table => []);
|
|
| 606 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 607 |
-$row = $result->fetch_hash_first; |
|
| 608 |
-is_deeply($row, {key1 => 2, key2 => 2}, "$test : update : disable bind filter1");
|
|
| 609 |
- |
|
| 610 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 611 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 612 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 613 |
-$dbi->auto_filter( |
|
| 614 |
- 'table1', ['key1', 'twice', 'twice'] |
|
| 615 |
-); |
|
| 616 |
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, auto_filter_table => undef);
|
|
| 617 |
-$dbi->update(table => 'table1', param => {key1 => 2}, where => {key2 => 2}, auto_filter_table => undef);
|
|
| 618 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 619 |
-$row = $result->fetch_hash_first; |
|
| 620 |
-is_deeply($row, {key1 => 2, key2 => 2}, "$test : update : disable bind filter2");
|
|
| 621 |
- |
|
| 622 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 623 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 624 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 625 |
-$dbi->auto_filter( |
|
| 579 |
+$dbi->apply_filter( |
|
| 626 | 580 |
'table1', ['key1', 'twice', 'twice'] |
| 627 | 581 |
); |
| 628 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 582 |
+$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, filter => {key1=> undef});
|
|
| 629 | 583 |
$dbi->delete(table => 'table1', where => {key1 => 1});
|
| 630 | 584 |
$result = $dbi->execute($SELECT_SOURCES->{0});
|
| 631 | 585 |
$rows = $result->fetch_hash_all; |
| ... | ... |
@@ -634,34 +588,10 @@ is_deeply($rows, [], "$test : delete"); |
| 634 | 588 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 635 | 589 |
$dbi->execute($CREATE_TABLE->{0});
|
| 636 | 590 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 637 |
-$dbi->auto_filter( |
|
| 638 |
- 'table1', ['key1', 'twice', 'twice'] |
|
| 639 |
-); |
|
| 640 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 641 |
-$dbi->delete(table => 'table1', where => {key1 => 1}, auto_filter_table => undef);
|
|
| 642 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 643 |
-$rows = $result->fetch_hash_all; |
|
| 644 |
-is_deeply($rows, [{key1 => 2, key2 => 2}], "$test : delete : disable1");
|
|
| 645 |
- |
|
| 646 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 647 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 648 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 649 |
-$dbi->auto_filter( |
|
| 650 |
- 'table1', ['key1', 'twice', 'twice'] |
|
| 651 |
-); |
|
| 652 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 653 |
-$dbi->delete(table => 'table1', where => {key1 => 1}, auto_filter_table => []);
|
|
| 654 |
-$result = $dbi->execute($SELECT_SOURCES->{0});
|
|
| 655 |
-$rows = $result->fetch_hash_all; |
|
| 656 |
-is_deeply($rows, [{key1 => 2, key2 => 2}], "$test : delete : disable2");
|
|
| 657 |
- |
|
| 658 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 659 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 660 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 661 |
-$dbi->auto_filter( |
|
| 591 |
+$dbi->apply_filter( |
|
| 662 | 592 |
'table1', ['key1', 'twice', 'twice'] |
| 663 | 593 |
); |
| 664 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 594 |
+$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, filter => {key1 => undef});
|
|
| 665 | 595 |
$result = $dbi->select(table => 'table1', where => {key1 => 1});
|
| 666 | 596 |
$result->filter({'key2' => 'twice'});
|
| 667 | 597 |
$rows = $result->fetch_hash_all; |
| ... | ... |
@@ -670,25 +600,13 @@ is_deeply($rows, [{key1 => 4, key2 => 4}], "$test : select");
|
| 670 | 600 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 671 | 601 |
$dbi->execute($CREATE_TABLE->{0});
|
| 672 | 602 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 673 |
-$dbi->auto_filter( |
|
| 674 |
- 'table1', ['key1', 'twice', 'twice'] |
|
| 675 |
-); |
|
| 676 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 677 |
-$result = $dbi->select(table => 'table1', where => {key1 => 2}, auto_filter_table => []);
|
|
| 678 |
-$result->filter({'key2' => 'twice'});
|
|
| 679 |
-$rows = $result->fetch_hash_all; |
|
| 680 |
-is_deeply($rows, [{key1 => 2, key2 => 4}], "$test : select : disable");
|
|
| 681 |
- |
|
| 682 |
-$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
|
| 683 |
-$dbi->execute($CREATE_TABLE->{0});
|
|
| 684 |
-$dbi->register_filter(twice => sub { $_[0] * 2 });
|
|
| 685 |
-$dbi->auto_filter( |
|
| 603 |
+$dbi->apply_filter( |
|
| 686 | 604 |
'table1', ['key1', 'twice', 'twice'] |
| 687 | 605 |
); |
| 688 |
-$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, auto_filter_table => undef);
|
|
| 606 |
+$dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, filter => {key1 => undef});
|
|
| 689 | 607 |
$result = $dbi->execute("select * from table1 where {= key1} and {= key2};",
|
| 690 | 608 |
param => {key1 => 1, key2 => 2},
|
| 691 |
- auto_filter_table => ['table1']); |
|
| 609 |
+ table => ['table1']); |
|
| 692 | 610 |
$rows = $result->fetch_hash_all; |
| 693 | 611 |
is_deeply($rows, [{key1 => 4, key2 => 2}], "$test : execute");
|
| 694 | 612 |
|
| ... | ... |
@@ -697,14 +615,14 @@ $dbi->execute($CREATE_TABLE->{0});
|
| 697 | 615 |
$dbi->execute($CREATE_TABLE->{2});
|
| 698 | 616 |
$dbi->register_filter(twice => sub { $_[0] * 2 });
|
| 699 | 617 |
$dbi->register_filter(three_times => sub { $_[0] * 3 });
|
| 700 |
-$dbi->auto_filter( |
|
| 618 |
+$dbi->apply_filter( |
|
| 701 | 619 |
'table1', ['key2', 'twice', 'twice'] |
| 702 | 620 |
); |
| 703 |
-$dbi->auto_filter( |
|
| 621 |
+$dbi->apply_filter( |
|
| 704 | 622 |
'table2', ['key3', 'three_times', 'three_times'] |
| 705 | 623 |
); |
| 706 |
-$dbi->insert(table => 'table1', param => {key1 => 5, key2 => 2}, auto_filter_table => undef);
|
|
| 707 |
-$dbi->insert(table => 'table2', param => {key1 => 5, key3 => 6}, auto_filter_table => undef);
|
|
| 624 |
+$dbi->insert(table => 'table1', param => {key1 => 5, key2 => 2}, filter => {key2 => undef});
|
|
| 625 |
+$dbi->insert(table => 'table2', param => {key1 => 5, key3 => 6}, filter => {key3 => undef});
|
|
| 708 | 626 |
$result = $dbi->select( |
| 709 | 627 |
table => ['table1', 'table2'], |
| 710 | 628 |
column => ['key2', 'key3'], |
| ... | ... |
@@ -723,7 +641,7 @@ $result->filter({'key2' => 'twice'});
|
| 723 | 641 |
$rows = $result->fetch_hash_all; |
| 724 | 642 |
is_deeply($rows, [{key2 => 4, key3 => 18}], "$test : select : join : omit");
|
| 725 | 643 |
|
| 726 |
-test 'auto_filter_easy_build'; |
|
| 644 |
+test 'apply_filter_easy_build'; |
|
| 727 | 645 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0});
|
| 728 | 646 |
$dbi->execute($CREATE_TABLE->{2});
|
| 729 | 647 |
$dbi->execute($CREATE_TABLE->{3});
|