0

私はcake/bakeで生成された標準形式を持っています。CakePHP3でモーダルを使用する(または:コントローラのJavascript)

フォームが送信されると、私のコントローラは(些細な)条件をチェック、条件Aの

  • それだけでデータ(patchEntity($ FOO、 ます$ this->要求 - >のgetDataを(セーブ条件B上))
  • それはJSの警告を呼び出し、その後、データを保存する必要があります。

私のお気に入りの警告がBootstrap4モーダルだろうが、はどのように私はcontrolleでモーダルを呼び出すことができますr? 私はこの種のものがMVCの考え方に違反していることを知っています。だから、別のアイデアを歓迎します。

私がAtmを見る唯一の解決策は、モーダルを開く新しいアクションにリダイレクトすることです。

答えて

1

条件がサーバー側でのみ評価できるとすれば、フォームを送信する前に、またはフォーム自体を送信するためにAJAXリクエストを発行し、次に評価できる対応する情報で応答することができますモーダルを表示する必要があるかどうかを判断するAJAXレスポンスハンドラ

したがって、連続した要求が警告ダイアログに由来することを示し、データを保存し続けることができることを示す追加のフラグを付けて、フォームを送信してください。

$this->Flash->error(__('This is the warning.')); 

そうように、あなたのコントローラの初期化関数で$this->loadComponent('Flash');を追加することを忘れないでください: - - は:のようなので、フラッシュコンポーネントを使用する際の問題は何

0

class ArticlesController extends AppController{ 

    public function initialize(){ 

     parent::initialize(); 
     $this->loadComponent('Flash'); // Include the FlashComponent 
    } 

    // Rest of your code here... 
} 
関連する問題