FuelPHPのormモデルでの追加

スポンサーリンク

こんばんは。ファガイです。

本日は、ちょっとした話だけ。
例えば、沢山のフィールドを編集する時。
保存しますよね。

例えばプロフィールテーブル。(簡易化してます。)

$profile = Model_Profile::find(1);
$profile_form = Fieldset::forge('profile_form');
$profile_form->add_model($profile);

if($profile_form->validation()->run()){
    $fields = $profile_form->validated();

    $profile->name = $fields['name'];
    $profile->age = $fields['age'];
    ・・・

    $profile->save();
}

まあ、こんな感じにしますよね。
どうやら、setメソッドがあるようで。というか俺が記憶してなかっただけかもしれない。

で、

$profile->name = ''

とかするのがめんどいので、こうする。

$profile = Model_Profile::find(1);
$profile_form = Fieldset::forge('profile_form');
$profile_form->add_model($profile);

if($profile_form->validation()->run()){
    $field = $profile_form->validated();

    foreach($fields ad $key => $value)
    {
        $profile->set($key, $value);
    }

    $profile->save();
}

こうすれば良かったことに気づいた。
それだけです。

コメント

タイトルとURLをコピーしました