管理画面ブログ記事一覧でのSQLエラー

sabohoney > 管理画面ブログ記事一覧でのSQLエラー @ 2017/10/23 21:37
管理画面の「http://exsample.com/admin/blog/blog_posts/index/1 」にアクセスし「登録日」のソートを昇順、降順と行ってのち一覧を再読み込みすると以下のエラーが発生する。

baserCMS 4.0.6

ブラウザ上でのエラー:
--- Error ----
Database Error

エラー: SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'created' in order clause is ambiguous

SQL Query: SELECT `BlogPost`.`id`, `BlogPost`.`blog_content_id`, `BlogPost`.`no`, `BlogPost`.`name`, `BlogPost`.`content`, `BlogPost`.`detail`, `BlogPost`.`blog_category_id`, `BlogPost`.`user_id`, `BlogPost`.`status`, `BlogPost`.`posts_date`, `BlogPost`.`content_draft`, `BlogPost`.`detail_draft`, `BlogPost`.`publish_begin`, `BlogPost`.`publish_end`, `BlogPost`.`exclude_search`, `BlogPost`.`eye_catch`, `BlogPost`.`created`, `BlogPost`.`modified`, `BlogCategory`.`id`, `BlogCategory`.`blog_content_id`, `BlogCategory`.`no`, `BlogCategory`.`name`, `BlogCategory`.`title`, `BlogCategory`.`status`, `BlogCategory`.`parent_id`, `BlogCategory`.`lft`, `BlogCategory`.`rght`, `BlogCategory`.`owner_id`, `BlogCategory`.`created`, `BlogCategory`.`modified`, `User`.`id`, `User`.`name`, `User`.`password`, `User`.`real_name_1`, `User`.`real_name_2`, `User`.`email`, `User`.`user_group_id`, `User`.`nickname`, `User`.`created`, `User`.`modified`, `BlogContent`.`id`, `BlogContent`.`description`, `BlogContent`.`template`, `BlogContent`.`list_count`, `BlogContent`.`list_direction`, `BlogContent`.`feed_count`, `BlogContent`.`tag_use`, `BlogContent`.`comment_use`, `BlogContent`.`comment_approve`, `BlogContent`.`auth_captcha`, `BlogContent`.`widget_area`, `BlogContent`.`eye_catch_size`, `BlogContent`.`use_content`, `BlogContent`.`created`, `BlogContent`.`modified` FROM `basercms`.`mysite_blog_posts` AS `BlogPost` LEFT JOIN `basercms`.`mysite_blog_categories` AS `BlogCategory` ON (`BlogPost`.`blog_category_id` = `BlogCategory`.`id`) LEFT JOIN `basercms`.`mysite_users` AS `User` ON (`BlogPost`.`user_id` = `User`.`id`) LEFT JOIN `basercms`.`mysite_blog_contents` AS `BlogContent` ON (`BlogPost`.`blog_content_id` = `BlogContent`.`id`) WHERE `BlogPost`.`blog_content_id` = 1 ORDER BY `created` desc, `BlogPost`.`id` DESC LIMIT 10
--- Error ----

Error.log
--- Error ---
Stack Trace:
#0 /lib/Baser/Model/Datasource/DboSource.php(471): PDOStatement->execute(Array)
#1 /lib/Baser/Model/Datasource/DboSource.php(437): DboSource->_execute('SELECT `BlogPos...', Array)
#2 /lib/Baser/Model/Datasource/DboSource.php(679): DboSource->execute('SELECT `BlogPos...', Array, Array)
#3 /lib/Baser/Model/Datasource/DboSource.php(1119): DboSource->fetchAll('SELECT `BlogPos...', false)
#4 /lib/Baser/Model/Behavior/BcCacheBehavior.php(100): DboSource->read(Object(BlogPost), Array)
#5 /lib/Baser/Model/BcAppModel.php(1448): BcCacheBehavior->readCache(Object(BlogPost), true, 'all', Array)
#6 /lib/Cake/Controller/Component/PaginatorComponent.php(196): BcAppModel->find('all', Array)
#7 /lib/Cake/Controller/Controller.php(1089): PaginatorComponent->paginate('BlogPost', Array, Array)
#8 /lib/Baser/Plugin/Blog/Controller/BlogPostsController.php(170): Controller->paginate('BlogPost')
#9 [internal function]: BlogPostsController->admin_index('1')
#10 /lib/Cake/Controller/Controller.php(491): ReflectionMethod->invokeArgs(Object(BlogPostsController), Array)
#11 /lib/Cake/Routing/Dispatcher.php(193): Controller->invokeAction(Object(CakeRequest))
#12 /lib/Cake/Routing/Dispatcher.php(167): Dispatcher->_invoke(Object(BlogPostsController), Object(CakeRequest))
#13 /app/webroot/index.php(159): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#14 {main}
--- Error ---

修正が正しいかはわかりませんが、以下で修正しエラーは解消しました。
lib/Baser/Plugin/Blog/Controller/BlogPostsController.php:148
--- code ---
- $order = $this->passedArgs['sort'];
+ $order = 'BlogPost.' . $this->passedArgs['sort'];
--- code ---

コアなので修正頂けますでしょうか。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
9 人のユーザが現在オンラインです。 (8 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 9