| ... | ... |
@@ -1,4 +1,6 @@ |
| 1 | 1 |
0.1684 |
| 2 |
+ |
|
| 3 |
+ - select() column option can receive hash reference |
|
| 2 | 4 |
- update_param_tag is DEPRECATED! use update_param instead. |
| 3 | 5 |
- insert_param_tag is DEPRECATED! use insert_param instead. |
| 4 | 6 |
- assing_param_tag is DEPRECATED! use assign_param instead. |
| ... | ... |
@@ -175,213 +177,4 @@ |
| 175 | 177 |
- renamed dbi_options to dbi_option. dbi_options is available, but deprecated. |
| 176 | 178 |
- renamed DBIx::Custom::TagProcessor to DBIx::Custom::Tag, and function names is cleanuped. |
| 177 | 179 |
- renamed register_tag_processor to register_tag. register_tag_processor is available, but deprecated. |
| 178 |
- - renamed tag_processors to tags. tag_prosessors is available, but deprecated. |
|
| 179 |
- - improved error message |
|
| 180 |
- - build all clause if param is undefined. |
|
| 181 |
- - each_column callback receive self as first argument. |
|
| 182 |
- - removed EXPERIMENTAL txn_scope |
|
| 183 |
-0.1636 |
|
| 184 |
- - added tests and cleanup |
|
| 185 |
-0.1635 |
|
| 186 |
- - renamed iterate_all_columns to each_column |
|
| 187 |
-0.1634 |
|
| 188 |
- - became more useful where method |
|
| 189 |
- - changed DBIx::Custom::Where greatly |
|
| 190 |
-0.1633 |
|
| 191 |
- - fixed test |
|
| 192 |
-0.1632 |
|
| 193 |
- - added EXPERIMENTAL where method |
|
| 194 |
- - added EXPERIMENTAL DBIx::Custom::Where. |
|
| 195 |
- - removed DBIx::Custom::Or |
|
| 196 |
-0.1631 |
|
| 197 |
- - added EXPERIMENTAL DBIx::Custom::Result end_filter method |
|
| 198 |
- - EXPERIMENTAL extended select method's where option |
|
| 199 |
- - fix select method empty where failed bug |
|
| 200 |
- - added EXPERIMENTAL suger method query option |
|
| 201 |
- - added EXPERIMENTAL or method |
|
| 202 |
-0.1630 |
|
| 203 |
- - fix test bug |
|
| 204 |
-0.1629 |
|
| 205 |
- - renamed auto_filter to apply_filter |
|
| 206 |
- - changed apply_filter method arguments |
|
| 207 |
- - deprecated cache_method |
|
| 208 |
-0.1628 |
|
| 209 |
- - remove DBIx::Custom::Model |
|
| 210 |
- - move table method and table_class attribute to DBIx::Custom |
|
| 211 |
- - added examples |
|
| 212 |
- - fixed connect method bug |
|
| 213 |
-0.1627 |
|
| 214 |
- - added insert, update, update_all, delete, delete_all, select method to DBIx::Custom::Table |
|
| 215 |
- - added EXPERIMENTAL txn_scope |
|
| 216 |
-0.1626 |
|
| 217 |
- - simplified DBIx::Custom::Model and DBIx::Custom::Table |
|
| 218 |
-0.1625 |
|
| 219 |
- - added EXPERIMENTAL DBIx::Custom::Model and DBIx::Custom::Table |
|
| 220 |
-0.1624 |
|
| 221 |
- - added EXPERIMENTAL iterate_all_columns method. |
|
| 222 |
-0.1623 |
|
| 223 |
- - added EXPERIMENTAL auto_filter method |
|
| 224 |
- - deprecated default_bind_filter and default_fetch_filter because these are global effect. |
|
| 225 |
- - changed defautl_bind_filter and default_fetch_filter attributes to methods. |
|
| 226 |
- - changed DBIx::Custom::Result default_filter attribute to method |
|
| 227 |
- - changed DBIx::Custom::Result filter attribute to method. |
|
| 228 |
- - filter_check is always done for usability |
|
| 229 |
-0.1622 |
|
| 230 |
- - deprecated DBIx::Custom::SQLite and DBIx::Custom::MySQL |
|
| 231 |
- - added dbi_options attribute |
|
| 232 |
- - checked attributes passed to connect method |
|
| 233 |
-0.1621 |
|
| 234 |
- - cleanup (removed undocumented features) |
|
| 235 |
-0.1620 |
|
| 236 |
- - updated document |
|
| 237 |
-0.1619 |
|
| 238 |
- - updated document |
|
| 239 |
- - added EXPERIMENTAL expand method |
|
| 240 |
-0.1618 |
|
| 241 |
- - added helper method |
|
| 242 |
- - added begin_work, commit, and rollback method |
|
| 243 |
-0.1617 |
|
| 244 |
- - L<DBIx::Custom> is now stable. APIs keep backword compatible in the feature. |
|
| 245 |
-0.1616 |
|
| 246 |
- - removed EXPERIMENTAL register_method(), and methods attribute, because it is too magical |
|
| 247 |
-0.1615 |
|
| 248 |
- - fixed DBIx::Custom::QueryBuilder build_query() bug |
|
| 249 |
- - required Perl 5.008001 to use @CARP_NOT |
|
| 250 |
-0.1614 |
|
| 251 |
- - removed DBIx::Custom::Query start_tag and end tag attributes |
|
| 252 |
- - enable escaping '{' and '}' in the source of SQL
|
|
| 253 |
- - fixed Carp Carp trust relationship |
|
| 254 |
-0.1613 |
|
| 255 |
- - added EXPERIMENTAL register_method() method |
|
| 256 |
- - added EXPERIMENTAL methods attribute |
|
| 257 |
-0.1612 |
|
| 258 |
- - added tests |
|
| 259 |
- - updated document |
|
| 260 |
- - removed DBIx::Custom::SQLite last_insert_rawid() mehtod(not backword compatible) |
|
| 261 |
- - removed DBIx::Custom::MySQL last_insert_id() method(not backword compatible) |
|
| 262 |
-0.1611 |
|
| 263 |
- - renamed update tag to update_param |
|
| 264 |
- - renamed insert tag to insert_param |
|
| 265 |
- - renamed sql_builder to query_builder |
|
| 266 |
-0.1610 |
|
| 267 |
- - added filter_check attribute. |
|
| 268 |
-0.1609 |
|
| 269 |
- - updated document. |
|
| 270 |
-0.1608 |
|
| 271 |
- - update document |
|
| 272 |
- - renamed DBIx::Custom::QueryBuilder::TagProcessors functions(not backword compatible) |
|
| 273 |
-0.1607 |
|
| 274 |
- - where argument of select() method can specify array(string, parameters) |
|
| 275 |
- - renamed build_query() to create_query()(not backword compatible) |
|
| 276 |
-0.1606 |
|
| 277 |
- - fix testing bug |
|
| 278 |
-0.1605 |
|
| 279 |
- - remove DBIx::Custom::QueryBuilder::tag_syntax() (not backword compatible) |
|
| 280 |
- - renamed DBIx::Custom::TagProcessor to DBIx::Custom::TagProcessors (not backword compatible) |
|
| 281 |
- - changed arguments of tag processor(not backword compatible) |
|
| 282 |
- - renamed DBIx::Custom::QueryBuilder::TagProcessors functions(not backword compatible) |
|
| 283 |
-0.1604 |
|
| 284 |
- - changed argument of tag processor(not backword compatible) |
|
| 285 |
- - renamed default_query_filter to default_bind_filter(not backword compatible) |
|
| 286 |
- - renamed DBIx::Custom::SQLTemplate to DBIx::Custom::SQLBuilder(not backword compatible) |
|
| 287 |
- - renamed create_query to build_query(not backword compatible) |
|
| 288 |
- - renamed sql_template to sql_builder(not backword compatible) |
|
| 289 |
- - removed DESTROY method(not backword compatible) |
|
| 290 |
- - removed disconnect method(not backword compatible) |
|
| 291 |
- - fixed DBIx::Custom::MySQL connect_memory |
|
| 292 |
-0.1603 |
|
| 293 |
- - removed DBIx::Custom commit method (not backword compatible) |
|
| 294 |
- - removed DBIx::Custom rollback method (not backword compatible) |
|
| 295 |
- - removed DBIx::Custom auto_commit method (not backword compatible) |
|
| 296 |
-0.1602 |
|
| 297 |
- - added cache_method attribute |
|
| 298 |
-0.1601 |
|
| 299 |
- - added cache attribute |
|
| 300 |
- - select, insert, update, update_all, delete, delete_all, execute only receive hash argument(not backword compatible) |
|
| 301 |
-0.1503 |
|
| 302 |
- - removed reconnect method |
|
| 303 |
- - removed connected method |
|
| 304 |
- - removed reconnect_memroy method |
|
| 305 |
- - renamed fetch_single to fetch_first |
|
| 306 |
- - renamed fetch_hash_single to fetch_hash_first |
|
| 307 |
- - updated document |
|
| 308 |
-0.1502 |
|
| 309 |
- - added commit method |
|
| 310 |
- - added rollback method |
|
| 311 |
- - changed select argument, added relation option |
|
| 312 |
- - moved host attribute to DBIx::Custom::MySQL |
|
| 313 |
- - moved port attribute to DBIx::Custom::MySQL |
|
| 314 |
- - moved database attribute to DBIx::Custom::MySQL and DBIx::Custom::SQLite |
|
| 315 |
-0.1501 |
|
| 316 |
- - removed register_format() |
|
| 317 |
- - removed formats() |
|
| 318 |
- - removed run_transaction() |
|
| 319 |
- - removed create_table() |
|
| 320 |
- - removed drop_table() |
|
| 321 |
- - changed select() arguments |
|
| 322 |
- - changed insert() arguments |
|
| 323 |
- - changed update() arguments |
|
| 324 |
- - changed update_all() arguments |
|
| 325 |
- - changed delete() arguments |
|
| 326 |
- - changed delete_all() arguments |
|
| 327 |
- - changed execute() arguments |
|
| 328 |
-0.1402 |
|
| 329 |
- - remove finish(), error() |
|
| 330 |
- - can receive code ref to filter() |
|
| 331 |
- - renamed resist to register |
|
| 332 |
-0.1401 |
|
| 333 |
- - renamed fetch_rows to fetch_multi |
|
| 334 |
- - renamed fetch_hash_rows to fetch_hash_multi |
|
| 335 |
-0.1301 |
|
| 336 |
- - Changed many(not backword compatible) |
|
| 337 |
-0.1201 |
|
| 338 |
- - Changed many(not backword compatible) |
|
| 339 |
-0.1101 |
|
| 340 |
- - rename DBIx::Custom::SQLite last_insert_id to last_insert_rowid |
|
| 341 |
-0.1001 |
|
| 342 |
- - remove run_transaction(). |
|
| 343 |
- - add transaction() and DBIx::Custom::Transaction |
|
| 344 |
- - rename fetch_first to fetch_single |
|
| 345 |
- - rename fetch_hash_first to fetch_hash_single |
|
| 346 |
-0.0906 |
|
| 347 |
- - fix some bug |
|
| 348 |
-0.0905 |
|
| 349 |
- - catch up with Object::Simple update |
|
| 350 |
-0.0904 |
|
| 351 |
- - cleanup |
|
| 352 |
-0.0903 |
|
| 353 |
- - catch up with Object::Simple update |
|
| 354 |
-0.0902 |
|
| 355 |
- - cleanup |
|
| 356 |
-0.0901 |
|
| 357 |
- - DBIx::Basic filter 'encode_utf8' utf8::upgrade process is deleted |
|
| 358 |
-0.0801 |
|
| 359 |
- - add 'create_table', 'drop_table' methods |
|
| 360 |
-0.0701 |
|
| 361 |
- - rename sql_template to sql_tmpl (not backword compatible) |
|
| 362 |
- - rename dbi_options to options (not backword compatible) |
|
| 363 |
-0.0605 |
|
| 364 |
- - fix encode_utf8 filter |
|
| 365 |
-0.0604 |
|
| 366 |
- - fix timeformat tests |
|
| 367 |
-0.0603 |
|
| 368 |
- - fix cache system bug |
|
| 369 |
-0.0602 |
|
| 370 |
- - update document |
|
| 371 |
-0.0601 |
|
| 372 |
- - bind_filter argument is changed to ($value, $key, $dbi, $infos) (not backword compatible) |
|
| 373 |
- - fetch_filter argument is changed to ($value, $key, $dbi, $infos) (not backword compatible) |
|
| 374 |
- - run_transaction argument is changed to ($dbi) |
|
| 375 |
-0.0502 |
|
| 376 |
- - update document |
|
| 377 |
-0.0501 |
|
| 378 |
- - packaging DBIx::Custom::Result DBIx::Custom::Query DBIx::Custom::MySQL DBIx::Custom::SQLite DBIx::Custom::SQL::Template |
|
| 379 |
-0.0401 |
|
| 380 |
- - catch up with DBIx::Custom::Result version up |
|
| 381 |
-0.0301 |
|
| 382 |
- - exchange filter argument 'key', 'value' (not backword compatible) |
|
| 383 |
-0.0201 |
|
| 384 |
- - rename tranzaction to transaction |
|
| 385 |
- - add filter_off |
|
| 386 |
-0.0101 |
|
| 387 |
- - First release |
|
| 180 |
+ - renamed tag_processors to tags. tag_prosessors is available, but deprecated |
| ... | ... |
@@ -869,8 +869,9 @@ sub select {
|
| 869 | 869 |
|
| 870 | 870 |
# Column clause |
| 871 | 871 |
if ($columns) {
|
| 872 |
- $columns = [$columns] if ! ref $columns; |
|
| 872 |
+ $columns = [$columns] unless ref $columns eq 'ARRAY'; |
|
| 873 | 873 |
foreach my $column (@$columns) {
|
| 874 |
+ $column = $self->column(%$column) if ref $column eq 'HASH'; |
|
| 874 | 875 |
unshift @$tables, @{$self->_search_tables($column)};
|
| 875 | 876 |
push @sql, ($column, ','); |
| 876 | 877 |
} |
| ... | ... |
@@ -2057,6 +2057,7 @@ $result = $model->select_at( |
| 2057 | 2057 |
); |
| 2058 | 2058 |
is_deeply($result->fetch_hash_first, |
| 2059 | 2059 |
{key1 => 1, key2 => 2, table2__key1 => 1, table2__key3 => 3});
|
| 2060 |
+ |
|
| 2060 | 2061 |
$result = $model->select_at( |
| 2061 | 2062 |
column => [ |
| 2062 | 2063 |
$model->mycolumn(['key1']), |
| ... | ... |
@@ -2066,6 +2067,15 @@ $result = $model->select_at( |
| 2066 | 2067 |
is_deeply($result->fetch_hash_first, |
| 2067 | 2068 |
{key1 => 1, table2__key1 => 1});
|
| 2068 | 2069 |
|
| 2070 |
+$result = $model->select_at( |
|
| 2071 |
+ column => [ |
|
| 2072 |
+ $model->mycolumn(['key1']), |
|
| 2073 |
+ {table2 => ['key1']}
|
|
| 2074 |
+ ] |
|
| 2075 |
+); |
|
| 2076 |
+is_deeply($result->fetch_hash_first, |
|
| 2077 |
+ {key1 => 1, table2__key1 => 1});
|
|
| 2078 |
+ |
|
| 2069 | 2079 |
test 'dbi method from model'; |
| 2070 | 2080 |
{
|
| 2071 | 2081 |
package MyDBI9; |