我有一个复杂形式的部分text_area,就像这样调用
<%= f.fields_for :notes do |notes_form| %>
<%= render :partial => 'note', :locals => {:f => notes_form, :operation => f, :count => operation.notes.count} %>
<% end %>
<p><%= add_child_link "Add note", :operation_notes %></p>
,部分看起来像这样
<% count ||= 2 %>
<div class='fields'>
<%= f.text_area :note_text, :rows => "4", :class => "notes" %>
<%= remove_child_link "x", f, count %>
</div>
表单上可以有很多注释,因此添加和删除子链接。
我遇到的问题是,如果我添加带有文字'abcd'
的注释,当我调出编辑表单时,我会'<p>abcd</p>'
。如果注释中有换行符,则会添加<br />
个标记。 text_area表单助手似乎正在使用simple_format帮助器,但我不知道为什么。任何人都可以帮忙,因为这是非常不受欢迎的行为吗?
答案 0 :(得分:2)
啊解决了,
在同一页面的早些时候,我正在显示笔记,并使用simple_format格式化
<%= simple_format note.note_text %>
似乎simple_format有点破坏性,因此,对note.note_text的调用总是返回格式化文本。如果我将上面改为
<%= simple_format note.note_text.dup %>
然后不改变note_text属性,我得到了适当的结果。
我将不得不更仔细地看看simple_format,但这确实让我感到不良行为。
修改的
看起来这已在Rails 3.1中得到纠正
答案 1 :(得分:1)
我怀疑你的Note
模型中有一些正在处理文本的东西。检查此模型中的回调。