繁体   English   中英

AJAX调用rails控制器,因为图像找不到正确的文件路径

[英]AJAX call to rails controller for image not finding correct file path

我有一个可以在ruby中访问的图像

<%= image_tag(@user.avatar.url(:thumb)) %>

使用回形针存储图像,并且在用户模型中设置了默认的缺失URL:

has_attached_file :avatar, :styles => { :medium => "200x200#", :thumb => "100x100#" }, :default_url => ":style/missing.png"

有一个手柄模板需要渲染相同的图像。 因此,我在get_image中创建了一个get_image方法,但它没有为丢失的图像返回正确的URL(对于有图像的用户,它会返回),只显示一张损坏的图像图片。

def get_image
    user_id = params[:userId]
    user = User.find(user_id)
    @user_image = user.avatar

    render json: @user_image, :status => 200 
end

并在application.js中调用它:

function getUserImage(userId)   {
        return $.ajax({ 
            type: "GET",
            url: '/get_image',
            data: {
                userId: userId
            },
            success: function(result)   {   
                console.log(result)
                userImage = result;
                return userImage;
            },
            error: function(err)    {
                console.log(err);
            }

        });
    };

结果是http://localhost:3000/profile/original/missing.png

ruby image_tag返回: http://localhost:3000/assets/medium/missing-e38aa1831b278c511eff9812efc6fda028d46b3b94f71cc88c3e0ba0e99ff19e.png

红宝石一个工作,另一个没有。 如何让它调用正确的图像路径? 谢谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM