我有一个名为“item”的对象,它有一个可以链接到任何URL的“标题”。我使用以下代码允许使用Best in Place gem编辑标题。编辑部分工作正常,但是当从输入框中移除焦点时,链接将丢失。
<%= best_in_place item, :title,
:display_with => :link_to,
:activator => "#edit-#{item.id}",
:helper_options => item.url %>
我感觉我没有正确设置“helper_options”的值。
如何编辑上面的代码,以便在用户更改标题后使用更新的文本恢复链接?我无法在Best in Place github site或其他任何地方找到此示例。
答案 0 :(得分:7)
迟到的答案,但你永远不知道谁会有类似的东西?对于你的情况,我认为你想要一个块:
<%= link_to(item.url) do %>
<span><%= best_in_place item, :title,
:activator => "#edit-#{item.id}" %>
</span>
<% end %>
这假设您要编辑标题,而不是链接的URL。
要编辑链接但使用标题作为链接主体,您可以在display_with
中使用lambda= best_in_place item,
:url,
:display_with => lambda {
|url| link_to item.title, url
}
那是haml,我没有测试确切的剪辑,但类似的是在我正在建立的应用程序中工作