Rails 表单关联字段显示对象而不是名称

Rails Form Association Field Shows Object Instead of Name

我有一个表单可以编辑具有关联的对象,但是 select 菜单显示关联的对象而不是用户友好的名称(即 #<User:0x007fdcac6da278> 而不是 SeanPerryman ).如何将该关联框的值设置为与该对象关联的值?

= simple_form_for(@captain) do |f|
  = f.error_notification
  = f.association :user 
  = f.input :name
  = f.association :world
  = f.button :submit

好像是给World协会做的,不是给User协会做的。

我试过添加值标签:

= f.association :user, :value => @captain.user.username

但这并没有改变显示,检查 select 框也没有提到我添加的值标签。

您可以使用 simple_form 的 label_method 选项,如下所示:

f.association :user, label_method: :username

https://github.com/plataformatec/simple_form#associations