0

yaml文字列を作成できるjavascript関数があります。次に、そのyaml文字列をフォームのhidden_​​fieldに入れて、フォームが送信されたときに文字列がデータベース列に読み込まれるようにします。私の問題は、列をきれいに読み取り、yml表現をハッシュのルビー配列に配置することです。私が対処しなければならないことの一部は、\ r\nがdb列にテキストとして格納されることです。はい、列のシリアル化で遊んでいましたが、hidden_​​fieldはテキストなので...

私はこれを行うためのきれいな方法を見つけることができません。私のyaml文字列はおおよそ次のようになります:

chapter:
  title: foo
    rating: awful
    words: 1000
  title: bar
    rating: fun
    words: 3
4

1 に答える 1

0

これは良いアーキテクチャではありません。YAML はオブジェクトを表し、属性を持つオブジェクトとして保存する必要があります。シリアル化されたデータを保存すること (はい、YAML はシリアル化されたものとしてカウントされます) は悪い習慣です。

Ruby は YAML を簡単に扱う

Ruby 1.8.X を使用している場合は、psych gem が必要です。

http://rubygems.org/gems/psych

例:

require 'rubygems' #necessary only for 1.8.X
require 'yaml'

##Load a YAML string into a ruby Hash
ruby_hash = YAML.load(my_yaml_string)

##Get YAML string from ruby Hash
yaml_string = YAML.dump(ruby_hash)
于 2012-06-25T01:57:41.887 に答える