ruby-on-rails – 在collection_select上使用大写

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在collection_select上使用大写前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如果在我找不到它之前已经回答了这个问题.

我有以下内容

= f.collection_select :sex_id,@sexes,:id,:name

这在控制器中:

@sexes = Sex.all

性别都以小写形式存储,如下所示:

id|name
 1|steer
 2|heifer
 3|holstein

我需要他们用Capital First字母输出

Steer
Heifer
Holstein

我试过了:

= f.collection_select :sex_id,:name.capitalize
= f.collection_select :sex_id,'id','name'.capitalize

但它们不起作用,我并没有真正期待它们,但在发布之前不得不尝试它们.

解决方法

collection_select在每个对象上调用一个方法获取选项值的文本.您可以在模型中添加方法以获得正确的值:
def name_for_select
  name.capitalize
end

然后在视图中:

= f.collection_select :sex_id,:name_for_select

猜你在找的Ruby相关文章