n1215さま
度々ご回答頂きありがとうございます。
引用:
・Dblogというインデックス(index)が定義されていない(Undefined)
・エラーはapp/webroot/theme/***/Elements/admin/dashboard/index_dblog_list.phpの52行目で発生している。
ここまでは理解していたのですが、原因がわからず質問させて頂きました。
お教え頂いたデバッグ用コードを挿入して確認したところ以下のような結果になりました。
最近の動き エラー時:1個目
array(1) {
[0]=> array(23) {
["*"]=> string(1) "6"
[1]=> string(45) "記事「テスト」を追加しました。"
[2]=> string(1) "2"
[3]=> string(19) "2015-04-22 13:17:20"
[4]=> string(19) "2015-04-22 13:17:20"
[5]=> string(1) "2"
[6]=> string(3) "optest"
[7]=> string(40) "a057a551654beadf0feb6e1434c514774fc15487"
[8]=> string(6) "苗字"
[9]=> string(6) "名前"
[10]=> string(18) "none@email.com"
[11]=> string(1) "2"
[12]=> string(0) ""
[13]=> string(19) "2015-04-22 13:16:09"
[14]=> string(19) "2015-04-22 13:16:09"
[15]=> string(1) "2"
[16]=> string(9) "operators"
[17]=> string(15) "サイト運営"
[18]=> string(5) "admin"
[19]=> string(1) "0"
[20]=> string(652) "YTo1OntpOjA7YToyOntzOjQ6Im5hbWUiO3M6MjE6IuWbuuWumuODmuODvOOCuOeuoeeQhiI7czozOiJ1cmwiO3M6MTg6Ii9hZG1pbi9wYWdlcy9pbmRleCI7fWk6MTthOjI6e3M6NDoibmFtZSI7czoxODoi5paw552A5oOF5aCx566h55CGIjtzOjM6InVybCI7czozMDoiL2FkbWluL2Jsb2cvYmxvZ19wb3N0cy9pbmRleC8xIjt9aToyO2E6Mjp7czo0OiJuYW1lIjtzOjI0OiLjgYrllY/jgYTlkIjjgo/jgZvnrqHnkIYiO3M6MzoidXJsIjtzOjMxOiIvYWRtaW4vbWFpbC9tYWlsX2ZpZWxkcy9pbmRleC8xIjt9aTozO2E6Mjp7czo0OiJuYW1lIjtzOjIxOiLlj5fkv6Hjg6Hjg7zjg6vkuIDopqciO3M6MzoidXJsIjtzOjMzOiIvYWRtaW4vbWFpbC9tYWlsX21lc3NhZ2VzL2luZGV4LzEiO31pOjQ7YToyOntzOjQ6Im5hbWUiO3M6MTg6IuOCs+ODoeODs+ODiOS4gOimpyI7czozOiJ1cmwiO3M6MzM6Ii9hZG1pbi9ibG9nL2Jsb2dfY29tbWVudHMvaW5kZXgvMSI7fX0="
[21]=> NULL
[22]=> string(19) "2015-02-16 11:50:13" } }
n1215さま の参考例と同様かとは思いますが、元は以下のようになっています。
最近の動き エラーなし:1個目(DashboardController.php コアのまま)
array(2) {
["Dblog"]=> array(5) {
["id"]=> string(1) "6"
["name"]=> string(45) "記事「テスト」を追加しました。"
["user_id"]=> string(1) "2"
["created"]=> string(19) "2015-04-22 13:17:20"
["modified"]=> string(19) "2015-04-22 13:17:20"
}
["User"]=> array(10) {
["id"]=> string(1) "2"
["name"]=> string(3) "optest"
["password"]=> string(40) "a057a551654beadf0feb6e1434c514774fc15487"
["real_name_1"]=> string(6) "苗字"
["real_name_2"]=> string(6) "名前"
["email"]=> string(18) "none@email.com"
["user_group_id"]=> string(1) "2"
["nickname"]=> string(0) ""
["created"]=> string(19) "2015-04-22 13:16:09"
["modified"]=> string(19) "2015-04-22 13:16:09" }
}
エラーの場合も、ユーザーグループ名などの値は格納されているようですが、Dblogを含めキーがセットされていない形です。
どこでそうなったのか、DashboardController.php を見比べてみるものの私には、到底理解できそうにありません。
これを見ると、投稿者の user_group_id はオリジナルでも参照出来るようですので、ユーザーグループ名ではなくユーザーグループIDでテンプレートにて判別することが出来るのではないかと考え
app/webroot/theme/***/Elements/admin/dashboard/index_dblog_list.php にて
<ul class="clear">
<?php foreach ($viewDblogs as $record): ?>
<?php if ($record['User']['user_group_id'] >= $user['user_group_id']): ?>
<li><span class="date"><?php echo $this->BcTime->format('Y.m.d', $record['Dblog']['created']) ?></span>
<small><?php echo $this->BcTime->format('H:i:s', $record['Dblog']['created']) ?>
<?php
$userName = $this->BcBaser->getUserName($record['User']);
if ($userName) {
echo '[' . $userName . ']';
}
?>
</small><br />
<?php echo $record['Dblog']['name'] ?></li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
としてみたのですが、先にご指摘頂いた通りページネーションが上手くいかない問題が残ってしまいます。
同じバージョンで試して頂いてもエラーが出ないとのことで、これ以上お手数をおかけするのも申し訳ないので、もう少し試行錯誤してみて駄目なようでしたら operators 以下はページネーションを外しても良いかと思っています。
色々とお手数をおかけした上に解決も出来ず申し訳ありませんが、n1215さまには心より感謝申し上げます。