Ruby:如何拼接JSON字段实现easy-autocomplete显示用户全名
在easy-autocomplete中显示用户全名的解决方案
你只需要修改search.json.jbuilder里的json.name字段,把用户的first_name和last_name拼接起来就可以实现全名显示,具体修改后的代码如下:
json.users do json.array!(@users) do |user| json.name "#{user.first_name} #{user.last_name}" json.url user_path(user) end end
这样easy-autocomplete的建议列表里就会展示用户的完整姓名了。原理很简单,就是把两个字符串用空格拼接成完整姓名后返回给前端组件。
如果担心部分用户存在名字字段为空的情况(比如未填写last_name),还可以做个小优化避免出现多余空格:
json.users do json.array!(@users) do |user| json.name [user.first_name, user.last_name].compact.join(' ') json.url user_path(user) end end
用compact可以过滤掉数组中的空值,再用空格拼接,就算其中一个字段为空,也不会显示多余的空格啦。
内容的提问来源于stack exchange,提问作者user9680695
相关产品推荐
相关产品推荐

