12月 252012
 

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

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

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

$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();
}

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

Pocket

 Posted by at 12:24 AM

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*