过滤器下拉菜单在Rails 5的Active Admin中显示为对象是因为Active Admin默认使用了SimpleForm作为表单生成器,而SimpleForm在处理关联对象时会将其显示为对象的字符串表示形式。
要解决这个问题,可以通过自定义过滤器的显示方式来改变下拉菜单的展示形式。以下是一种可能的解决方案:
app/admin
目录下,找到对应资源的文件(例如users.rb
)。filter
方法开始。filter :category
。as
选项指定自定义的输入类型,例如as: :select
。collection
选项指定下拉菜单的选项集合,可以是一个数组或一个方法名,例如collection: Category.all
。label_method
选项指定关联对象的显示字段,例如label_method: :name
。需要注意的是,上述解决方案中的示例代码是基于一般情况下的假设,实际情况可能会有所不同。具体的实现方式可能需要根据项目的具体情况进行调整。
推荐的腾讯云相关产品:腾讯云云服务器(CVM),腾讯云数据库MySQL版(TencentDB for MySQL),腾讯云对象存储(COS),腾讯云人工智能(AI)等。你可以通过访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于这些产品的详细信息。
领取专属 10元无门槛券
手把手带您无忧上云