<%= Feed_item.content%>
对此:
<%= wrap(Feed_item.content)%>
在app / vIEws / shared / _Feed_item.HTML.erb中
但是,当我尝试通过这样做在app / vIEws / users / show.HTML.erb中实现wrap helper时:
<%=渲染换行(@microposts)%>
我明白了:
undefined method `scan' for #Array:0x00000102e8cc10>
我究竟做错了什么?
这是包装助手的代码:
module MicropostsHelperdef wrap(content) sanitize(raw(content.split.map{ |s| wrap_long_string(s) }.join(' ')))endprivate def wrap_long_string(text,max_wIDth = 30) zero_wIDth_space = "​" regex = /.{1,#{max_wIDth}}/ (text.length < max_wIDth) ? text : text.scan(regex).join(zero_wIDth_space) endend解决方法 wrap方法需要一个字符串;你传给它一个数组.
由于其格式化,实际上无法读取该方法,但似乎它只需要一个字符串 – 您试图将整个帖子集合发布到它.但是,您可以收集帖子内容的包装版本.
总结以上是内存溢出为你收集整理的ruby-on-rails – 在Michael Hartl的Ruby on Rails教程中,如何在show.html.erb中使用wrap helper?我得到了未定义的方法`scan’全部内容,希望文章能够帮你解决ruby-on-rails – 在Michael Hartl的Ruby on Rails教程中,如何在show.html.erb中使用wrap helper?我得到了未定义的方法`scan’所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)