
ショコラ
Pharallel スクリーンコントローラーについて
Form→Conf→Comp 画面について書き出してみました。

もっさん先輩
FormControllerクラス
<?php
namespace App\Http\Controllers;
class FormController
extends \App\Libs\ScreenController
{
public function init( $form_data, $request)
{
parent::init($form_data,$request);
// 何かの初期化処理
$form_data([
'text' => 'もっさん',
'num' => '3141592653',
'email' => 'mossan@answorz',
'pass' => '123456',
'tel' => '080-123-4567',
'postal' => '112-0012',
'textarea' => "テキストエリアの\nテスト",
'chk' => ['1','3'],
'radio' => '2',
'select' => '2',
'multi-select' => ['1','3'],
'hidden' => 'ショコラ',
]);
}
public function create( $form_data )
{
parent::create($form_data);
// 画面に表示する変数の用意
}
public function on_ok( $request )
{
// 何かの処理
$this->check_params($request,[
'text' => 'required',
'chk' => ['required',null,'チェックボックス'],
'multi-select' => ['required','マルチチェックボックスがエラーです。'],
],
['required' => ':attribute は必須です']);
$request['val2'] = 'history test';
// 次画面の表示
return $this->init_forward('conf');
}
}
ConfControllerクラス
<?php
namespace App\Http\Controllers;
class ConfController
extends \App\Libs\ScreenController
{
public function init( $form_data, $request)
{
parent::init($form_data,$request);
// 何かの初期化処理
}
public function create( $form_data )
{
parent::create($form_data);
// 画面に表示する変数の用意
$this['from'] = $this->get_history('form');
}
public function on_back( $request )
{
// 前画面の表示
return $this->back('form');
}
public function on_forward( $request )
{
// 何かの処理
// 次画面の表示
return $this->init_forward('comp');
}
}
CompControllerクラス
<?php
namespace App\Http\Controllers;
class CompController
extends \App\Libs\ScreenController
{
public function init( $form_data, $request)
{
parent::init($form_data,$request);
// 何かの初期化処理
}
public function create( $form_data )
{
parent::create($form_data);
// 画面に表示する変数の用意
}
public function on_back( $request )
{
// 前画面の表示
return 'conf';
}
public function on_init_form( $request )
{
// 何かの処理
// 次画面の表示
return $this->init_forward('form');
}
}
以上