「フォームから入力されたデータを処理し、次のページで入力したデータの確認を行う」など、他のコンポーネントに必要なデータを渡さなければならないことがあります。このようなときはデータを渡すコンポーネントにアクセサを定義しておき、そのアクセサを使ってデータを設定します。
例として、MainPage
コンポーネントでユーザーの名前を入力し、HelloPage
コンポーネントでその名前を表示するアプリケーションを考えます。MainPage
にはユーザー名を入力するためのテキストフィールドがあり、インスタンス変数user_name
にデータが代入されるものとします。
HelloPage
ではMaiPage
で入力されたユーザー名を表示します。MainPage
からデータを受け取るためのアクセサuser_name
を定義します。
class HelloPage < CKComponent attr_accessor :user_name end
MainPage
では入力されたユーザー名をHelloPage
に渡します。
class MainPage < CKComponent def set_user_name_to_hellopage # HelloPageを生成し、ユーザー名を渡す hellopage = page(“HelloPage”) hellopage.user_name = @user_name # HelloPageを表示する return hellopage end end