2009-09-02 22 views
0

symfony 1.2でチェックボックスリストを作成すると、チェックされたオプションをフォームに戻した配列が得られます。フォームを保存すると、データベースに "Array"という単語が含まれるようになりました。これを回避する方法はありますか?または、json_encode/json_decode配列をncecessaryとして手動で保存する必要がありますか?ひどく退屈なようだ。 読んでいただきありがとうございます。symfonyチェックボックスリストの保存

答えて

0

データの保存および取得時にserialize()およびunserialize()関数を使用できます。

どのormを使用しているのかわかりませんが、私はpropel wayで説明できます。

たとえば、投稿テーブルと投稿クラスがあります。また、ポストテーブルにはtextまたはvarcharデータ型のoptionsカラムがあります。

Post.class.phpでモデルのディレクトリに次の2つのオーバーライドメソッドちょうどそのような

setOptions($v) 
{ 
    parent::setOptions(serialize($v)); 
} 

getOptions() 
{ 
    return unserialize($this->options); 
} 

を定義することができます。

ビューまたはアクションでは、$ post-> getOptions()ですべてのオプションを取得でき、データベースレコードに関連するすべてのオプションを含む配列があります。

関連する問題