私の CakePHP アプリケーションには、いくつかのフィールドとボタンを持つ Element があります。この要素をすべてのページに配置し、ユーザーがボタンをクリックしたときに同じコントローラーとアクションに移動するために使用したいと考えています。Element のフォームはルート ページでは正常に機能しますが、別のページでボタンをクリックすると、関数はヒットせず、アドレス バーにはコントローラー/関数のみが追加されます。
エレメント:
<form id="login-user" action="Login/doSomething" method="post">
<input id="edit-submit-button" class="form-submit" type="submit" value="Log in" name="op"> </input>
</form>
私のコントローラーは:
class LoginController extends Controller{
public $helpers=array('Js'=>array('Jquery'), 'Session');
public function index() {
$this->autoRender = false;
}
function doSomething(){
$this->redirect("/");
}
}
Pages.ctp ファイルとビューにこの要素があります。Pages.ctp ファイルにあるボタンをクリックすると、ページが localhost/myApp/Login/doSomething にリダイレクトされ、関数が問題なくヒットします。ただし、要素がビュー (localhost/myApp/somePage/view) にあり、ユーザーがフォーム ボタンをクリックすると、ページはリロードされるだけで、アドレスの末尾に「Login/doSomething」が追加されますが、関数にはヒットしません。
誰でもこれを修正する方法を知っていますか?