所以我有一个 Rails 应用程序作为我的 ios 应用程序的后端服务器。我的 rails 应用程序有一个用户控制器和头像控制器。用户控制器负责处理用户,而头像控制器负责处理用户的个人资料图片。User 模型和 Avatar 模型之间的关系是
User has_one :avatar
&Avatar belongs_to :user
每个用户has_many friends
(用户模型)。现在我想获取每个用户的所有朋友并以 json 格式将其发送到我的 ios 客户端,所以我这样做了
@friends = @user.friends
@usernames = ""
for friend in @friends
@usernames << friend.username + ","
end
respond_to do |format|
format.json {render :json => @usernames}
end
for 循环是我只发送我需要的东西。它使数据更小更安全,因为我不发送他们的 auth_token。这工作正常,但现在我想做的是发送每个“朋友”头像。我所做的是我尝试使用for
循环附加每个头像。图像(我使用 Carrierwave 上传我的数据和 Cloudinary 作为我的存储)到@avatars 变量并发送它但没有用。这是代码:
@friends = @user.friends
@usernames = ""
@avatars = ""
for friend in @friends
@usernames << friend.username + ","
@avatars << friend.avatar.image + ","
end
respond_to do |format|
format.json {render :json => {users = @usernames, avatars = @avatars}}
end
这是我得到的错误 expecting tASSOC
...r :json => {users = @usernames, avatars = @avatars}}