0

初めてCakePHPで作業しています。1 つのコントローラーに対して複数のビューを作成する必要があります。
例: 設定テーブルがあります。

設定テーブルのスキーマ

1.ID
2.名前 3.
種類

ケーキベイクを使用してモデルとコントローラーを作成しました。しかし、データが設定テーブルに入る場所から複数のビューがあります。役職、部署、資格、プロジェクトなどの私のデータは、入力された名前で設定テーブルのタイプ フィールドに入ります。

そのため、モデルとコントローラーをケーキベイクで作成すると、設定テーブルに従ってビューが作成されますが、タイプごとにビューページが必要です。つまり、指定の作成、部門の作成、プロジェクトの作成、およびそれらのファイルの表示、編集、削除です。

それを達成する方法を見つけるのを手伝ってください..

4

3 に答える 3

2

私はあなたが探していると思います

$this->render('viewfilename');

必要な数のビューを作成し、要件に基づいて、コントローラーから特定のビューで送信します。

例えば:

public function add($type) {
    if ($this->request->is('post')) {
        ...
    }

    $this->set(............);

    switch ($type) {
        case 'designations':
            $this->render('add_designations');
            break;
        case 'departments':
            $this->render('add_departments');
            break;
        case 'qualifications':
            $this->render('add_qualifications');
            break;
    }

}

ビューフォルダーにadd_designations.ctp、add_departments.ctp、add_qualifications.ctpなどのビューファイルを作成します。

于 2013-07-25T14:45:08.710 に答える
1

それぞれのビュー フォルダー (Views/"Modelname"/add_department.ctp) に .ctp ファイルを作成することで、ビューを追加できます。

「モデル名」コントローラーに追加するだけです

function addDepartment() {
    // Logic here
}

ただし、タイプを設定するだけの場合は、通常の add.ctp を作成し、可能なすべてのタイプを含む Selectbox を作成できます。

于 2013-07-25T14:45:34.167 に答える
0

パターン Model View Controller (MVC) がどのように機能するかをもう一度読む必要があります。

新しい部門を作成する場合は、モデルにdepartmentsController関連付けられたを使用することをお勧めします。Department

各コントローラーには、それに関連付けられたアクションがあります。このようにして、Cake Bake は各コントローラーの と コードを生成adddeleteますedit

もちろん、お好みの機種を利用してお好みのコントローラーで自作することも可能です。ただし、ケーキの焼き方が異なるとは思わないでください:)

于 2013-07-25T14:33:08.450 に答える