1

default.ctpビューにcakephpを使用してユーザーのユーザー名を表示できるようにしたい。authComponentを使用して、ユーザーIDを検索できることはわかっていますが、これを使用してユーザーテーブルからユーザー名を検索するにはどうすればよいですか?私はコントローラーからこれを行うことに慣れていますが、ビュー内でこれを行う方法がわかりません。

users table
userid |  username   
4

3 に答える 3

2

コントローラ内でそれを行う方法をすでに知っている場合は、戦闘の 99% が完了しています。コントローラーで取得したユーザーをビューに渡すだけです。

コントローラーで:

$user = $this->User->read(null, $this->Auth->user('id'));
$this->set('user', $user);

あなたの見解では:

<?php echo $user['User']['username']; ?>

これは非常に基本的な Cake のものです。マニュアルにもう少し時間を費やす必要があります :)

于 2012-08-09T22:11:28.053 に答える
1

私はCakePHPに精通していません。ただし、MVCフレームワークでは、ビューからデータベースにアクセスしないでください。これを処理する正しい方法は、どのデータ(通常はモデルからのもの)を表示するかをコントローラーにビューに指示させることです。

CakePHP内のMVCの詳細については、こちらを確認してください。

于 2012-08-09T22:04:43.450 に答える
0

Cake 3.6.X の時点で、これは私が Cake 3 で使用しているもののサンプルであり、認証されたユーザーのユーザー名を出力するログアウト ボタンも作成します。

    <?php
        $usert=$this->request->getsession()->read('Auth.User');
    //then you can print the 'username' by
        echo $user['username'];
    ?>

Cake の以前のバージョンではこれらの機能が利用可能でしたが、現在は非推奨の通知があります:

    $usert=$this->request->session()->read('Auth.User');
    $usert=$this->Session->read('Auth.User');
于 2018-09-17T00:08:28.740 に答える