1

これらのファイルがあります

  • views / sign_up / new.html.erb
  • views / sign_up / content.text.erb

content.text.erbこのtext_areaのコンテンツをデフォルトとして表示したいと思います。
どうやって?

views / sign_up / new.html.erb

<%= text_area :page, :content, :readonly => 'true', :size => '250x10' %>

views / sign_up / content.text.erb

Hello

Are you seeing this?


This should be at Line 6.
4

2 に答える 2

2

ドキュメントによると、設定する必要が@page.contentあります(最初の2つのパラメータ:page:content)。これが不可能な場合は、次のような標準の「ハードコードされた」テキストエリアにフォールバックします。<textarea><%= render file: "sign_up/content" -%></textarea>

于 2013-01-29T10:38:46.270 に答える
1

私はそれをテストしていませんが、あなたの答えはこれについて見るべきです:

<%= text_area :page, :content, :readonly => 'true', :size => '250x10', :value => render_to_string("/sign_up/content") %>

html_safeから返された文字列に適用する必要があるかもしれませんrender_to_string

アップデート:

自分で試した後、エラーが発生したため、回避策を考え出しました。

1-コントローラーに@valを次のように設定します。

@val = render_to_string(:file => "/sign_up/content.html.erb", :layout => false)

2-次にあなたの見解では:

<%= text_area :page, :content, :readonly => 'true', :size => '250x10', :value => @val %>

チャームとして機能します。

textareaのvalue属性を使用したくない場合は、手順1で値をに割り当てることができます@page.content。これにより、デフォルト値としてフォーム入力に自動的に挿入されます。

于 2013-01-29T10:36:51.193 に答える