0

恥ずかしい質問ですが、ドキュメントを実際の form_for に翻訳できないようです。これは、サイトが提供するすべてです..

RedCloth.new("Some text").to_html
 #=> "<p>Some text</p>"

それが保存された後にそれを解析する方法だと思います。しかし、マークアップされたテキストとして保存するにはどうすればよいでしょうか?

これが私の試みですが、テキストエリアをRedClothとして保存するためのパラメーターを設定する方法がわかりません。何か案は?

- form_for @text do |f|
   # some RedCloth instantiation
   f.submit
4

1 に答える 1

3

そのように RedCloth として解析されたパラメーターを保存しないでください。また、お勧めしません。それを RedCloth に解析すると、出力を別のフィールドに保存しない限り、元の値が失われます。これお勧めします。

モデルでa を使用してbefore_save、その値を解析して保存できます。

before_save :parse_text

# your model methods go here

private

  def parse_text
    self.parsed_text = RedCloth.new(text).to_html
  end

ビューに値をレンダリングしたいときは、parsed_textRails に安全であることを伝える必要があります:

@object.parsed_text.html_safe

ただし、ここに含まれるコードは、Markdown と HTML を混在させる人々を考慮していないため、使用方法は十分注意してください。

于 2010-11-26T06:01:40.257 に答える