2010-12-03 6 views
0

私はEmployee controllerのログインビューを作成しましたが、ログインビューがレンダリングされると、それはプレーンな白いページ(私のdefault.ctpからのレイアウトではありません)として表示されます。CakePHPログインレイアウト

ログインアクション から$this->layout = 'default';を呼び出そうとしましたが、そのコードが表示されるまで実行されないようです。

コントローラ/ employee_controller.php

function login() { 
    $this->layout = 'default'; 
} 

ビュー/レイアウト/ default.ctpに

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
     <title><?php echo $title_for_layout; ?></title> 
     <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" /> 
     <link rel="stylesheet" type="text/css" href='<?php echo "css".DS."cake.generic.css" ?>' /> 
    </head> 
    <body> 
    <div id="parentDiv"> 
     <div id="menu"> 
      <div id="messages"> 
      </div> 
     </div> 
     <div id="header"> 
      <?= $this->element('search'); ?> 
     </div> 
     <div id="content"> 
      <?php echo $content_for_layout; ?> 
     </div> 
    </div> 
    </body> 
</html> 

ビュー/従業員/ login.ctp

<?= debug($this); ?> 
<div> 
    <div style="border: black solid 1px"> 
     <?php 
     /* 
     * To change this template, choose Tools | Templates 
     * and open the template in the editor. 
     */ 
     echo $this->Form->create('Employee', array('url' => array('controller' => 'employees', 'action' => 'login'))); 
     echo $this->Form->input('username'); 
     echo $this->Form->input('password'); 
     echo $this->Form->submit('Login'); 
     echo $this->Form->end(); 
     ?> 
    </div> 
</div> 
+0

は、ビューをした、あなたはあなたの提案をありがとうございました、2 – nik

+0

@nikにcore.phpのファイルと設定し、デバッグモードを編集して、エラーを確認することができます。はい、ビュー(私は、ログインのテキストボックスとボタンでビューのレンダリングが表示されるため、実際に動作していることがわかります)、デバッグは何も教えていません(私は2でデバッグしています)。 – Benny

+0

ああ!私はファイルを見ない限り、問題を伝えることはできません。私の場合、デフォルトのレイアウトは一度も言及していません。 – nik

答えて

1

コードを見た後で、これはCSSパスが間違っていることが原因です。あなたのスタイルシートを呼び出す行を私が下に示したコードに置き換えることはできますか?
<?php print $html->css('cake.generic.css'); ?>

+0

.htaccessファイルはすべて、本の行と一致する行です。私はあなたが "データベースを強制的にロードする"ことが何を意味するのか分かりません。より多くのコードは私の編集を参照してください。 – Benny

+0

私は自分の答えを編集しました。 – Nigel

+0

愚かな小さなもの、男...ありがとうございます – Benny