【问题标题】:Rails Paperclip Displaying Image Title, Not ImageRails 回形针显示图像标题,而不是图像
【发布时间】:2016-05-14 18:59:45
【问题描述】:

我刚刚在我的 rails 应用上安装了 Paperclip,并让它上传了一张图片,但它仍然只显示图片名称和损坏的图片图标,而不是显示实际的 URL。

我的user.rb 模型显示:

  has_attached_file :avatar,
  :path => ":rails_root/public/system/:attachment/:id/:style/:filename",
  :url => "/system/:attachment/:id/:style/:filename",
  :styles => { :medium => "300x300>", :thumb => "100x100>" },
  :default_url => "/avatars/default_:style_avatar.png"

  validates_attachment_content_type :avatar, content_type: /\Aimage\/.*\Z/

我的users_controller.rb 显示:

def create
  @user = User.create( user_params )
  ...
end

...

  private

 def user_params
   params.require(:user).permit(:avatar)
 end

我的表单/显示看起来像这样(if/else 被#ed 用于故障排除):

<%# if current_user.avatar != nil %>
    <%= image_tag @user.avatar.url(:thumb) %>
<%# else %>
     <p>Looks a little impersonal...<br>Wanna upload a profile picture:</p>
     <%= form_for @user, url: user_path, html: { multipart: true } do |form| %>
        <%= form.file_field :avatar %>
        <%= form.submit "Upload Picture", class: "btn btn-primary" %>
     <% end %>
<%# end %>

我已签入我的schema.rb 文件,并且将:avatar 添加到用户表的迁移成功:

create_table "users", force: :cascade do |t|
   t.string   "first_name"
   t.string   "last_name"
   t.string   "email"
   t.string   "password_digest"
   t.datetime "created_at",          null: false
   t.datetime "updated_at",          null: false
   t.integer  "role"
   t.string   "slug"
   t.string   "avatar_file_name"
   t.string   "avatar_content_type"
   t.integer  "avatar_file_size"
   t.datetime "avatar_updated_at"
end

add_index "users", ["slug"], name: "index_users_on_slug", unique: true

但是,我没有看到上传的图像正在保存的任何地方。我的initializers 文件夹中也没有看到任何与回形针相关的内容,所以也许它与 gem 的安装有关?任何帮助将不胜感激。

【问题讨论】:

    标签: ruby-on-rails image paperclip


    【解决方案1】:

    如果您的图片上传正确,它们一定是在您的公共目录中复制,请检查。

    您可以尝试的另一件事是,创建一个新模型,比如说photos。他们的关联就像user, has_many :photos 并在照片模型中附加您的头像。

    【讨论】:

    • 这是有趣的部分。公共目录中没有任何保存的照片(除了我的错误消息)。
    猜你喜欢
    • 1970-01-01
    • 2014-11-14
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-04
    • 2018-06-13
    相关资源
    最近更新 更多