【发布时间】:2017-11-23 06:31:43
【问题描述】:
我有一个使用 select 标签的 rails 表单,如下所示:
<%= f.collection_select(:question_id, Question.all, :id, :content) %>
我的目标是在表单的下拉列表中缩短内容的长度。所以,我添加了一个方法并将我的表单更改为:
<%= f.collection_select(:question_id, Question.all, :id, :truncated_content) %>
在我的问题模型中,我有:
def truncated_content
self.content.truncate(140)
end
在我的控制台中,question.truncated_content 的结果是 => 无
我错过了什么吗?
【问题讨论】:
-
可能内容字段中没有任何内容
-
你必须试试这个
Question.all.map{|q| [q.text.truncate(5),q.id] }试试这个而不是Question.all -
不确定在任何情况下截断 (apidock.com/rails/String/truncate) 是否会返回
nil。 -
您能否使用 pry 检查
self.content.truncate(140)的不同部分的结果是什么? -
内容字段中有内容。
标签: ruby-on-rails methods