可以link_to导致渲染吗?

时间:2009-11-10 14:20:04

标签: ruby-on-rails

我想在视图中渲染部分。因此,当单击按钮MORE时,所有内容都保持不变,只显示其他字符。就我而言,整篇文章。

<%= @article1.content[0..300] + "..." %> 
<%= link_to "more", ....... %>

我不知道什么是正确的methot。不知何故,我必须向rails解释,当点击按钮时,它会显示整篇文章。也许我不应该使用方法link_to ..

提前感谢您的回复

2 个答案:

答案 0 :(得分:2)

尝试link_to_function,使用truncate部分并使用全文插入隐藏标记,使用link_to_function中的javascript切换它们

答案 1 :(得分:2)

您要找的是link_to_remotelink_to_function

link_to_remote将从您的控制器获取文章的其余部分,并使用部分通过RJS替换/附加到DOM元素。这样可以最大限度地减少发送的不必要数据,并有助于处理已禁用javascript的用户。

使用link_to_function,将在加载页面时提供整篇文章,但CSS前面会隐藏前300个字符以外的所有内容。这更容易设置但发送更多数据,它还依赖于启用了javascript的用户。

不看源,普通用户可能无法区分这两种方法。

您选择哪种选择取决于您。对不起,我没有时间提供代码示例,但互联网上到处都是。