我问了一个类似的问题,但我找不到答案。我想我提供了太多的信息,所以这次它会变得简短而且很甜蜜。
我有一个回复表单,我想在一个分页项目中呈现。分页项目定义为@share_item
,因此当我在该部分内部编写代码时,它们将如下所示:
<% if registered_member?(share_item.user) %>
当我想要将表单呈现为部分时,会出现问题。省略了一些代码,它看起来像
<%= form_for(@blob) do |f| %>
<%= f.text_area :content, rows: "2", placeholder: "Reply to @#{share_item.user.name}" %>
@blob
是主要的模型控制器,其中定义了所有内容,其中@share_item
是@blob
的分页项。我收到错误share_item is an undefined model or method
。
如果我直接在partial中添加表单的html,我可以添加如下内容:
<textarea id="blob_content" name="blob[content]" placeholder="Reply to @<%= share_item.user.name %>">@<%= share_item.user.name %> </textarea>
我不会收到任何错误。
我希望能够渲染表单,而不是直接在部分内部添加表单(这是烦人的,不可思议的,占用空间的)。我有其他相似的代码,我基本上只是想找到一个解决方案,我可以从渲染表单中获得相同的结果,因为在这种情况下将HTML添加到部分。
答案 0 :(得分:0)
尝试:
<%= form_for(@blob) do |f| %>
<%= f.text_area :content, rows: "2", placeholder: "Reply to @<%= @share_item.user.name%>" %>