2012-12-07 120 views
0

我使用Cloudinary Gem来管理图像。我是一个新的红宝石在轨道上,所以无法找到我错在哪里。将图像上传到云端服务器已完成,但我无法从服务器上检索图像。我把我的看法,控制器和上传类放在这里。我已经安装了载波,并将其粘贴到前面提到的gem文件中的云雾宝石之前。无法从云数据服务器检索图像

控制器console.rb

class ConsoleController < ApplicationController 
layout 'console' 
def c_view 
@img = Image.new 
end 
def create 
@img = Image.new(params[:img]) 
    if @img.save 
    redirect_to(:action => 'c_view') 
    else 
    render('c_view') 
    end  
end 
end 

ImageUploader类

class ImageUploader < CarrierWave::Uploader::Base 
include Cloudinary::CarrierWave 
def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
end 
version :standard do 
    process :eager => true 
    process :resize_to_fill => [1200, 800, :north]   
    end 

version :thumb do 
eager 
resize_to_fit(200, 200) 
end 

def public_id 
return model.photo_file_name 
end 
end 

浏览

用于上传

<%= form_for :img, :url => {:action => "create"} do |f| %> 

<%= f.label :gallery, "Gallery"%> 
    <%= f.select :gallery, ["Art", "Bike", "Landscape", "Other", "Portrait"] %> 

    <%= f.label :photo_file_name, "Title" %> 
<%= f.text_field :photo_file_name %> 

<%= f.label :camera_model, "Camera" %> 
<%= f.text_field :camera_model %> 

<%= f.label :lens_used, "Lens" %> 
<%= f.text_field :lens_used %> 

<%= f.label :shutter_speed, "Shutter Speed" %> 
<%= f.text_field :shutter_speed %> 

<%= f.label :aperture, "Aperture" %> 
<%= f.text_field :aperture %> 

<%= f.label :iso, "ISO" %> 
<%= f.text_field :iso %> 

<%= f.label :description, "Description" %> 
<%= f.text_area :description, :rows => 2 %> 

<%= f.file_field :image %>  

<%= f.submit "Submit", class: "btn btn-success"%> 

<% end %> 

用于显示

<%= image_tag (@img.image_url :thumb, :width => 200, :height => 200) %> 

模型的图像

class Image < ActiveRecord::Base 
belongs_to :user 
attr_accessible :id, :user_id, :name, :camera_model, :lens_used, :shutter_speed, :aperture, :iso, :gallery, :description, :photo_file_name, :photo_file_size, :photo_updated_at, :image, :image_url 
mount_uploader :image, ImageUploader 
end 

它没有显示任何错误。上传部分正在工作,但图像的检索不起作用。 请帮忙。

回答

1

哦,我的上帝...... !!!!

我是所有人中最愚蠢的一个..对不起,.. Rofl ...... !!

我没有把节目放在控制器中。因此,只有这些线具有在所述控制器和所述视图被添加如下:

在控制器

@images = Image.all 

在View

<% @images.each do |img| %> 
    <%= image_tag(img.image.url (:thumb)) 
<% end %> 

由于