【发布时间】:2014-07-30 22:26:36
【问题描述】:
我有一个带有头像字段的用户模型,它使用 CarrierWave 来管理文件。当我查询用户表(例如 User.where(...))并通过 JSON 将其发送到管道时,头像字段变为如下所示:
[{"头像"=>{"url"=>"https://xyz.s3.amazonaws.com/uploads/user/avatar/avatar.jpg", :thumb=>{"url"=>"https://xyz.amazonaws.com/uploads/user/avatar/thumb_avatar.jpg"}, :full=>{"url"=>" https://xyz.amazonaws.com/uploads/user/avatar/full_avatar.jpg"}}}]
但是当我查看数据库时,我看到的只是头像字段中的 avatar.jpg。似乎 CarrierWave 正在附加所有这些额外信息。
我怎样才能只获取数据库中的 avatar.jpg 而不是所有其他内容?我的“hack”方法是这样做 User.where(...).select("avatar as avatar_file") 但我更愿意找到一个更清洁的解决方案。
谢谢! 亚伦
【问题讨论】: