2012-02-28 6 views
1

私はこのコードを持っています。奇妙なCakePHPのレイアウトの問題(アヤックス)

レイアウトを除いて、残りのコードはうまく動作しています。正しいコントローラ+アクション+引数を渡しました。要素とビューも正常に動作し、返されたデータには処理されたデータが含まれますが、間違ったレイアウトになります。

tmpフォルダを消去しても役に立ちませんでした。また、ajaxレイアウトは、そうでなければならないことを確認しました(別のcontroller.action + viewセットでも動作します)。

+0

誰でも?お願いします? – yossi

答えて

3

あなたは試みることができる:

 

function contact($token) { 
    $this->layout = 'ajax'; 
    $this->render("ajax_view_name", FALSE); 
} 
 

はそれが

+0

が動作しますが、私は本当にそれを理解する必要があります。ありがとう – yossi

+0

Ajaxリクエストでは、レイアウトは必要ありませんが、Viewは、 'render()'メソッドとまったく同じだと思います。 2つのパラメータはそれぞれビューとレイアウトを参照します。つまり、私はあなたが最初の行を必要としないと信じています。 –

+0

MVCの方法はビューを必要とし、ケーキの方法はレイアウトです。私は最後にあなたの答えを受け入れます、私は他の答えを得ることができるようにVを削除.. – yossi

0

を役に立てば幸いあなたは、Ajaxリクエストで呼び出されるアクションで$this->layout = null;を設定しようとしたことがありますか?

+0

、効果なし。 – yossi

0

$this->autoLayout = false;については、必要なレイアウトをレンダリングしてください。

lib\View\View.phpファイルでは、CakePHPはデフォルトでautoLayout = trueを定義しています。それが役に立てば幸い。