2016-12-02 3 views
1

SubmittedFormを拡張しましたので、theformサブミットの後にロジックを追加できます。SilverStripeの拡張クラスでコールリダイレクト

DataExtensionに機能updateAfterProcessが表示されていますが、ここからリダイレクトしたい場合を除き、すべて正常に機能します。

class MyForm extends DataExtension 
    { 

     static $db = array(); 

     public function updateAfterProcess(){ 
      // $this->redirect('www.google.com'); 
      // want to redirect here 
     } 
    } 

SubmittedForm: 
    default_sort: 'Created DESC' 
    extensions: 
    - MyForm 
+0

あなたは 'ます$ this->あなたのクラスの' redirect'機能を持っていない限り、 '(...)リダイレクトを使用することができるはずです。 'parent :: redirect(...)'を試してみることもできます。 – Peter

+0

致命的なエラー:/opt/lampp/htdocs/freelottofest/mysite/code/extensions/Sur​​veyForm.php 20行目の未定義のメソッドDataExtension :: redirect()を呼び出す –

+0

@Peter私はDirector :: redirect( '/プレースメント ')。しかし動作しませんでした。 –

答えて

4

SubmittedFormDataObjectないControllerです。したがって、redirectメソッドもありません。

Controller::curr()を使用することをお勧めします。これは現在のコントローラを取得します。

例:

Controller::curr()->redirect(/* where you wanna go */); 
+0

Worked Thanks a lot :) @bummzack –