Showing 3 changed files with 13 additions and 72 deletions
+2 -9
lib/DBIx/Custom.pm
... ...
@@ -306,13 +306,6 @@ sub create_model {
306 306
                ? [%{$model->filter}]
307 307
                : $model->filter;
308 308
     $self->_apply_filter($model->table, @$filter);
309
-    my $result_filter = ref $model->result_filter eq 'HASH'
310
-               ? [%{$model->result_filter}]
311
-               : $model->result_filter;
312
-    for (my $i = 1; $i < @$result_filter; $i += 2) {
313
-        $result_filter->[$i] = {in => $result_filter->[$i]};
314
-    }
315
-    $self->_apply_filter($model->table, @$result_filter);
316 309
     
317 310
     # Associate table with model
318 311
     croak "Table name is duplicated " . _subname
... ...
@@ -1449,8 +1442,8 @@ sub apply_filter {
1449 1442
     my $self = shift;
1450 1443
     
1451 1444
     warn "apply_filter is DEPRECATED! " . 
1452
-         "use type_rule method, DBIx::Custom::Result filter method, " .
1453
-         "and DBIx::Custom::Model result_filter method instead";
1445
+         "use type_rule method and DBIx::Custom::Result filter method, " .
1446
+         "instead";
1454 1447
     
1455 1448
     return $self->_apply_filter(@_);
1456 1449
 }
-11
lib/DBIx/Custom/Model.pm
... ...
@@ -12,7 +12,6 @@ has [qw/dbi name table view/],
12 12
     table_alias => sub { {} },
13 13
     columns => sub { [] },
14 14
     filter => sub { [] },
15
-    result_filter => sub { [] },
16 15
     join => sub { [] },
17 16
     type => sub { [] },
18 17
     primary_key => sub { [] };
... ...
@@ -173,16 +172,6 @@ Join clause, this is used as C<select()>'s C<join> option.
173 172
 Foreign key, this is used as C<primary_key> of C<insert_at>,C<update_at()>,
174 173
 C<delete_at()>,C<select_at()>.
175 174
 
176
-=head2 C<result_filter> EXPERIMENTAL
177
-
178
-    my $dbi = $model->result_filter
179
-    $model  = $model->result_filter(
180
-        title => sub { ... },
181
-        author => sub { ... }
182
-    );
183
-
184
-This filter is applied when L<DBIx::Custom>'s C<include_model()> or C<create_model> is called.
185
-
186 175
 =head2 C<table>
187 176
 
188 177
     my $table = $model->table;
+11 -52
t/dbix-custom-core-sqlite.t
... ...
@@ -2863,13 +2863,10 @@ $dbi->type_rule(
2863 2863
 );
2864 2864
 $dbi->insert({key1 => 2}, table => 'table1');
2865 2865
 $result = $dbi->select(table => 'table1');
2866
-$result->filter(key1 => sub { $_[0] * 3});
2866
+$result->filter(key1 => sub { $_[0] * 3 });
2867 2867
 is($result->one->{key1}, 6);
2868
-$result = $dbi->select(table => 'table1');
2869
-$result->filter(key1 => sub { $_[0] * 3});
2870
-is($result->fetch->[0], 6);
2871 2868
 
2872
-test 'result_filter';
2869
+test 'separator';
2873 2870
 $dbi = DBIx::Custom->connect($NEW_ARGS->{0});
2874 2871
 $dbi->execute($CREATE_TABLE->{0});
2875 2872
 $dbi->execute($CREATE_TABLE->{2});
... ...
@@ -2880,15 +2877,9 @@ $dbi->create_model(
2880 2877
        'left outer join table2 on table1.key1 = table2.key1'
2881 2878
     ],
2882 2879
     primary_key => ['key1'],
2883
-    result_filter => {
2884
-        key1 => sub { $_[0] * 2 }
2885
-    }
2886 2880
 );
2887 2881
 $model2 = $dbi->create_model(
2888 2882
     table => 'table2',
2889
-    result_filter => [
2890
-        [qw/key1 key3/] => sub { $_[0] * 3 }
2891
-    ]
2892 2883
 );
2893 2884
 $dbi->setup_model;
2894 2885
 $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2});
... ...
@@ -2902,8 +2893,8 @@ $result = $model->select(
2902 2893
     where => {'table1.key1' => 1}
2903 2894
 );
2904 2895
 is_deeply($result->one,
2905
-          {key1 => 2, key2 => 2, 'table2.key1' => 3, 'table2.key3' => 9});
2906
-is_deeply($model2->select->one, {key1 => 3, key3 => 9});
2896
+          {key1 => 1, key2 => 2, 'table2.key1' => 1, 'table2.key3' => 3});
2897
+is_deeply($model2->select->one, {key1 => 1, key3 => 3});
2907 2898
 
2908 2899
 $dbi->separator('__');
2909 2900
 $model = $dbi->model('table1');
... ...
@@ -2915,8 +2906,8 @@ $result = $model->select(
2915 2906
     where => {'table1.key1' => 1}
2916 2907
 );
2917 2908
 is_deeply($result->one,
2918
-          {key1 => 2, key2 => 2, 'table2__key1' => 3, 'table2__key3' => 9});
2919
-is_deeply($model2->select->one, {key1 => 3, key3 => 9});
2909
+          {key1 => 1, key2 => 2, 'table2__key1' => 1, 'table2__key3' => 3});
2910
+is_deeply($model2->select->one, {key1 => 1, key3 => 3});
2920 2911
 
2921 2912
 $dbi->separator('-');
2922 2913
 $model = $dbi->model('table1');
... ...
@@ -2928,8 +2919,8 @@ $result = $model->select(
2928 2919
     where => {'table1.key1' => 1}
2929 2920
 );
2930 2921
 is_deeply($result->one,
2931
-          {key1 => 2, key2 => 2, 'table2-key1' => 3, 'table2-key3' => 9});
2932
-is_deeply($model2->select->one, {key1 => 3, key3 => 9});
2922
+          {key1 => 1, key2 => 2, 'table2-key1' => 1, 'table2-key3' => 3});
2923
+is_deeply($model2->select->one, {key1 => 1, key3 => 3});
2933 2924
 
2934 2925
 
2935 2926
 test 'filter_off';
... ...
@@ -2943,45 +2934,13 @@ $dbi->create_model(
2943 2934
        'left outer join table2 on table1.key1 = table2.key1'
2944 2935
     ],
2945 2936
     primary_key => ['key1'],
2946
-    result_filter => {
2947
-        key1 => sub { $_[0] * 2 }
2948
-    },
2949
-);
2950
-$model2 = $dbi->create_model(
2951
-    table => 'table2',
2952
-    result_filter => [
2953
-        [qw/key1 key3/] => sub { $_[0] * 3 }
2954
-    ]
2955 2937
 );
2956 2938
 $dbi->setup_model;
2957 2939
 $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2});
2958
-$dbi->insert(table => 'table2', param => {key1 => 1, key3 => 3});
2959 2940
 $model = $dbi->model('table1');
2960
-$result = $model->select(
2961
-    column => [
2962
-        $model->mycolumn,
2963
-        {table2 => [qw/key1 key3/]}
2964
-    ],
2965
-    where => {'table1.key1' => 1}
2966
-);
2967
-$result->filter_off(1);
2968
-$result->end_filter(key1 => sub { $_[0] * 5});
2969
-is_deeply($result->one,
2970
-          {key1 => 1, key2 => 2, 'table2.key1' => 1, 'table2.key3' => 3});
2971
-
2972
-$result = $model->select(
2973
-    column => [
2974
-        $model->mycolumn,
2975
-        {table2 => [qw/key1 key3/]}
2976
-    ],
2977
-    where => {'table1.key1' => 1}
2978
-);
2979
-$result->filter_off(1);
2980
-$result->end_filter(key1 => sub { $_[0] * 5});
2981
-
2982
-is_deeply($result->fetch_first,
2983
-          [1, 2, 1, 3]);
2984
-
2941
+$result = $model->select(column => 'key1');
2942
+$result->filter(key1 => sub { $_[0] * 2 });
2943
+is_deeply($result->one, {key1 => 2});
2985 2944
 
2986 2945
 test 'available_date_type';
2987 2946
 $dbi = DBIx::Custom->connect($NEW_ARGS->{0});