回形针上传并显示图像不起作用

编程入门 行业动态 更新时间:2024-10-27 12:27:08
本文介绍了回形针上传并显示图像不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在运行Ruby 2.3.3和Rails 5.1.4的Windows 7上安装了回形针-> 5.1和最新的ImageMagick.

I installed paperclip -> 5.1 and latest ImageMagick on Windows 7(yeah..i know) running Ruby 2.3.3 and Rails 5.1.4.

我按照回形针说明的建议安装了file.exe,并在"PATH"中添加了"C:\ Program Files(x86)\ GnuWin32 \ bin".

I installed file.exe as suggested by paperclip instructions and added 'C:\Program Files (x86)\GnuWin32\bin' to my PATH.

上传照片时出现以下错误:

When i upload my pictures i get the following error:

ActionController::RoutingError (No route matches [GET] "/images/medium/missing.png"):

当我尝试查看显示页面以查看图像时,出现以下错误:

and when i try to view the show page to see the images i get the following error:

ActionController::RoutingError (No route matches [GET] "/system/recipes/images/000/000/005/medium/Capture777.PNG"):

您能为我提供有关如何正确上传和显示图像的指导吗?我假设错误会提供一些输入.我尝试关注其他SO文章,但到目前为止没有任何帮助.

Can you give me guidance on how to properly upload my image and show it? I'm assuming the errors would give some input. I tried to follow other SO articles but nothing helped so far.

这是我的路线.rb

Rails.application.routes.draw do resources :recipes root "recipes#index" end

这是我的控制器显示/新操作和find_recipe参数

Here is my controller show/new actions and find_recipe params

def show @recipe = find_recipe end def new @recipe = Recipe.new end private def find_recipe @recipe = Recipe.find(params[:id]) end def recipe_params params.require(:recipe).permit(:title, :description, :image) end

这是我的模特

Here is my Model

class Recipe < ApplicationRecord has_attached_file :image, style: { :medium => "400x400#" } validates_attachment_content_type :image, content_type: /\Aimage\/.*\z/ end

这是我的show.html.haml

Here is my show.html.haml

= image_tag @recipe.image.url(:medium, class: "recipe_image") %h1= @recipe.title %p= @recipe.description = link_to 'Back', root_path, class: 'btn btn-info' = link_to 'Edit', edit_recipe_path, class: 'btn btn-primary' = link_to 'Delete',recipe_path, method: :delete, data: { confirm: 'Are you sure?' }, class: 'btn btn-danger'

这是我的_form.html.haml

Here is my _form.html.haml

= simple_form_for @recipe, html: { multipart: true } do |f| - if @recipe.errors.any? #errors %p = @recipe.errors.count Prevented this recipe from saving %ul - @recipe.errors.full_messages.each do |msg| %li = msg .panel-body = f.input :title, input_html: { class: 'form-control' } = f.input :description, input_html: { class: 'form-control' } = f.file_field :image, input_html: { class: 'form-control' } = f.button :submit, class: 'btn btn-primary'

推荐答案

问题是您尝试使用样式选项的方式,它必须为styles,将其替换并重试:

The problem is the way you're trying to use the styles option, it must be styles, replace it and try again:

class Recipe < ApplicationRecord has_attached_file :image, styles: { medium: '400x400#' } validates_attachment_content_type :image, content_type: /\Aimage\/.*\z/ end

这使得Paperclip仅执行命令:

This makes Paperclip only execute the commands:

  • Command :: file -b --mime开始交易
  • Command :: file -b --mime创建副本
  • Command :: file -b --mime to start the transaction
  • Command :: file -b --mime to create a copy

相反:

  • Command :: file -b --mime
  • Command :: identify -format
  • Command :: identify -format %m
  • Command :: convert
  • Command :: file -b --mime
  • Command :: file -b --mime
  • Command :: identify -format
  • Command :: identify -format %m
  • Command :: convert
  • Command :: file -b --mime

因此,您无法通过:medium样式获取图像,但是可以访问其url并通过image标签显示它,但是样式无效.

Hence you can't get the image by the :medium style, but you can access its url and show it through an image tag, but styles won't work.

更多推荐

回形针上传并显示图像不起作用

本文发布于:2023-11-27 20:29:12,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1639493.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:回形针   不起作用   图像   上传

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!