gpt4 book ai didi

ruby-on-rails - Ruby on Rails : Change checkbox label in formtastic

转载 作者:行者123 更新时间:2023-12-04 06:21:39 24 4
gpt4 key购买 nike

我正在使用 formtastic 为与另一个模型具有 HABTM 关系的模型对象呈现表单。

我这样做是为了呈现复选框列表:

<%= f.input :classes, :as => :check_boxes, :collection => UserClass.all %>

是的,它呈现了所有复选框,并在右侧显示了对象名称,类似这样。所以我有这样的事情:
[x] #<UserClass:0x000000087e4958>

我怎样才能改变它?我想显示类名和描述...

谢谢你。

最佳答案

使用 :member_label 选项:

<%= f.input :classes, :as => :check_boxes,
:collection => UserClass.all, :member_label => :name %>

(例如,假设您的 UserClass 具有 name 属性)。如果您的标签来自多个字段,您可以传递一个 Proc。例如(如果你的 UserClass 有 first_namelast_name 属性):
<%= f.input :classes, :as => :check_boxes,
:collection => UserClass.all,
:member_label => Proc.new { |u| "#{u.first_name} #{u.last_name}" } %>

以上适用于 Formtastic 2.x 版。对于 1.2-stable 分支,它的工作原理相同(您可以传入方法名称或过程),但该选项称为 :label_method 。例子:
<%= f.input :classes, :as => :check_boxes,
:collection => UserClass.all, :label_method => :name %>

关于ruby-on-rails - Ruby on Rails : Change checkbox label in formtastic,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9865057/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com