Ruby on rails Rails:未定义的方法“truncate';对于main:Object
我需要在rails控制台中按照 我已经在下面找到了解决问题的方法,但是我认为这个问题可以发布出来。 如果你想让我删除它,就告诉我Ruby on rails Rails:未定义的方法“truncate';对于main:Object,ruby-on-rails,ruby,Ruby On Rails,Ruby,我需要在rails控制台中按照 我已经在下面找到了解决问题的方法,但是我认为这个问题可以发布出来。 如果你想让我删除它,就告诉我 我想在rails控制台中创建一个ActionView::Helpers::TextHelper texthelper = ActionView::Helpers::TextHelper => ActionView::Helpers::TextHelper 我创建一个字符串 string = "I want to call the truncate metho
ActionView::Helpers::TextHelper
texthelper = ActionView::Helpers::TextHelper
=> ActionView::Helpers::TextHelper
string = "I want to call the truncate method"
=> "I want to call the truncate method"
truncate(string, length: 25, omission: '... (continued)')
=> "And they f... (continued)"
truncate("Once upon a time in a world far far away", length: 17, separator: ' ')
我收到
undefined method `truncate' for main:Object
整个想法来源于这篇文章。。
我在下面的讨论中找到了答案 我应该在rails控制台中使用以下命令包含ActionView::Helpers::TextHelper
include ActionView::Helpers::TextHelper
然后我可以调用truncate方法
truncate(string, length: 17, separator: ' ')
=> "this is a tesf..."
我现在的理解是,使用
include
命令,ActionView::Helpers::TextHelper
中的方法现在可以在控制台中使用<代码>截断方法可以在文本
上执行 在rails控制台中执行以下步骤:
include ActionView::Helpers::TextHelper
truncate(string, length: 25, omission: '... (continued)')
=> "Once upon ... (continued)"
这里的“ActionView::Helpers::TextHelper”模块提供了一组用于格式化和转换字符串的方法
Truncate方法在TextHelper模块中,所以您必须将其包含在控制台中。对于rails 6和ruby 2.6。*,可能存在一些问题,至少我在执行富格文本的Truncate时遇到了一个未定义错误。因此,ActionText和Truncate,我已经找到了解决方案,它可能很有用=>
<%= truncate(strip_tags(blog.body.to_s), length: 450) %>
添加到
在使用Rails 6应用程序时,我尝试在具有ActionText属性的视图上添加调用truncate
方法
就是这样,我有一个名为About的模型,属性为title
,ActionText属性为body
因此,当我尝试调用视图中body
的ActionText属性上的truncate
方法时,使用以下方法:
<%= about.body.truncate(30) %>
我得到一个错误:
undefined method `truncate' for #<ActionText::RichText:0x00007fe5c4828488>
未定义#的方法'truncate',我只是将代码行修改为:
<%= truncate(strip_tags(about.body.to_s), length: 30) %>
而且它很有魅力
您可以在官方Rails文档中阅读有关truncate方法的更多信息:
就这些
我希望这有帮助谢谢你的回复。如果您愿意通过编辑您的帖子来解释这是什么,以及当我将其包含在rails控制台中时会发生什么,我将很高兴接受您的回答ActionText的替代方法