flex データの新規追加
2011/07/08
FlexでDBにデータを新規追加してみる。
新規追加するようのフォームをつくる
まずは、値をいれるためのフォームの作成。
- 「デザイン」ビューにして「データとサービス」内にいる「creatXXX」ってヤツのトコで右クリック
- フォームを生成
- 「戻り値の型のフォーム」のチェックを外す
- 「次へ」ボタン
- 入力パラメーターで表示・非表示したいカラムのチェックを好きにする
- 「終了」ボタン
つくったフォームの調整
位置や色の変更は好きにするとして…「ID」の指定は必要。
- まずは好きな位置に移動なり、見た目を変更するなりすきにする
- 作ったフォームを選択した状態でパネルの「プロパティ」を見る
- 「共通:ID」が空っぽだったら適当に名前をつける。とりあえず英語の小文字にしとく
書込みの実行
「●●●.commit();」ってのが無いと実行してくれないらしい。
- 「ソース」ビューに変更する
- 作ったフォームの「button_clickHandler(event)」を探す(見つけられなければ「s:Form id=」を探して作ったIDかチェックする)
- 「button_clickHandler(event)」の「button_clickHandler」のとこにカーソルを合わせる(選択しない。カーソルがあればOK。おそらく「button_clickHandler」の背景色がグレーに変わるはず)
- 「F3」キーを押す(button_clickHandler()のトコにジャンプしてくれる)
- 「create○○○Result.token = ●●●.create○○○(XXXXXX);」みたいなのが最後にあるはずだから次の行に下記追加
●●●.commit();
表示の更新
書込みしたらその結果…というか見た目も変えたい。
- 「●●●.commit();」の下に下記追加
getAll○○○Result.token = ●●●.get○○○Test();
最終
私の場合は下記の要になった。
※今回の作業分のみ。
button_clickHandler()の内容
- protected function button_clickHandler(event:MouseEvent):void
- {
- var test2:Test = new Test();
- test2.name = nameTextInput.text;
- test2.comment = commentTextInput.text;
- createTestResult.token = testService.createTest(test2);
- testService.commit();
- getAllTestResult.token = testService.getAllTest();
- }
フォームの内容
- <s:Form id="formNewItem" x="192" y="11" defaultButton="{button}">
- <s:FormItem label="Name">
- <s:TextInput id="nameTextInput" text="{test.name}"/>
- </s:FormItem>
- <s:FormItem label="Comment">
- <s:TextInput id="commentTextInput" text="{test.comment}"/>
- </s:FormItem>
- <s:Button id="button" label="new" click="button_clickHandler(event)"/>
- </s:Form>