首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Carrierwave不渲染图像(Ruby 3,Rails 6)

Carrierwave不渲染图像(Ruby 3,Rails 6)
EN

Stack Overflow用户
提问于 2021-06-14 08:40:57
回答 1查看 83关注 0票数 0

我正在尝试使用Carrierwave gem和Cloudinary在我的网站上上传图片。尽管发生了上传,但根据终端(如下所示),图像不会在浏览器中呈现。考虑到新的依赖更新,我已经做了大量的研究,但是没有成功。以下是负责这一点的MVC:

代码语言:javascript
复制
class Account < ApplicationRecord
  has_many :posts, dependent: :destroy
  
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :validatable
end
代码语言:javascript
复制
class Post < ApplicationRecord
  belongs_to :account
  has_many :photos, dependent: :destroy
end
代码语言:javascript
复制
class Photo < ApplicationRecord
  belongs_to :post
  validates :image, presence: true
  mount_uploader :image, PhotoUploader
end

我的uploader.rb文件:

代码语言:javascript
复制
class PhotoUploader < CarrierWave::Uploader::Base
  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

   include Cloudinary::CarrierWave

  process :convert => 'png'
  process :tags => ['post_picture']

  version :standard do
    process :resize_to_fill => [300, 300, :center]
  end

  version :thumbnail do
    resize_to_fit(100, 100)
  end
end

我的帖子控制器:

代码语言:javascript
复制
class PostsController < ApplicationController
    before_action :find_post, only: [:show]
    before_action :authenticate_account!

    def index
        @posts = Post.all.limit(10).includes(:photos)
        @post = Post.new
    end

      def create
        if
        Post.create(post_params)
        redirect_to posts_path
        flash[:notice] = "Success!"
        else
            flash[:alert] = "Something went wrong"
            redirect_to posts_path
        end
    end

    def show
        @photos = @post.photos
    end

    private

    def find_post
        @post = Post.find_by id: params[:id]
    return if @post
        flash[:danger] = "Post not found."
        redirect_to root_path
    end

    def post_params
        params.require(:post).permit :content
    end
end

提交图片后我的终端:

代码语言:javascript
复制
 Rendering layout layouts/application.html.erb
  Rendering posts/index.html.erb within layouts/application
  Post Load (12.2ms)  SELECT "posts".* FROM "posts" LIMIT $1  [["LIMIT", 10]]
  ↳ app/views/posts/index.html.erb:29
  Photo Load (4.0ms)  SELECT "photos".* FROM "photos" WHERE "photos"."post_id" IN ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)  [[nil, 1], [nil, 2], [nil, 3], [nil, 4], [nil, 5], [nil, 6], [nil, 7], [nil, 8], [nil, 9], [nil, 10]]
  ↳ app/views/posts/index.html.erb:29
  Rendered posts/index.html.erb within layouts/application

以及我用于提交图片的erb表单:

代码语言:javascript
复制
<div class="d-flex flex-column align-items-center mt-3">
  <div class="col-xl-7 col-lg-8 col-md-10 col-sm-11 post-card">
    <div class="card">
      <div class="card-header">
        Create Post
        <div class="card-body">
            <%= form_for @post, :html => {:multipart => true, :class => "dropzone upload-images p-0 border-0"} do |f| %>
                <div class="form-group row mt-2">
                    <div class="col pl-0">
                        <%= f.text_field :content, class: "form_control border-0", placeholder: "Enter a comment..." %>   
                    </div>
                </div>
                <div class="fallback">
                    <%= file_field_tag "images[]", type: :file, multiple: true %>
                </div>
                <div class="dz-message m-0"></div>
                    <div class="dropzone-previews mb-3">
                        <div class="upload-photos-icon">
                        <i class="fa fa-plus fa-2x" aria-hidden="true" style="color:#dddfe2"></i>
                        </div>
                    </div>
                <%= f.submit "Submit", class: "btn-md btn-primary" %>
                <% end %>
            </div>
        </div>
    </div>
</div>
EN

回答 1

Stack Overflow用户

发布于 2021-06-14 16:13:15

请尝试使用例如binding.pry对其进行调试,并查看是否有照片。这是在本地主机中还是在服务器上的某个地方?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67963666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档