首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拒绝许可@ dir_s_mkdir - /listings

拒绝许可@ dir_s_mkdir - /listings
EN

Stack Overflow用户
提问于 2017-02-10 01:49:46
回答 1查看 1.8K关注 0票数 0

我不太清楚我做错了什么。带有S3的回形针。

Errno::ListingsController#update权限中的EACCES拒绝@ dir_s_mkdir - /listings提取源(第44行):

  1. def更新
  2. respond_to do \x格式
  3. if @listing.update(listing_params)
  4. format.html { redirect_to @listing,注意:‘列表已被成功更新。’}
  5. format.json {呈现:显示,状态:确定,位置:@ else } 48

Listing_controller.rb

代码语言:javascript
复制
<p id="notice"><%= notice %></p>

<div class="row">
  <div class="col-md-6">
    <div class="thumbnail">
      <%= image_tag @listing.image.url %>
    </div>
  </div>
  <div class="col-md-6">
    <h3><%= @listing.name %></h3>
    <p><%= number_to_currency (@listing.price) %></p>
    <p><%= @listing.description %></p>
  </div>
</div>

<%= link_to 'Edit', edit_listing_path(@listing), class: "btn btn-link" %>
<%= link_to 'Back', listings_path, class: "btn btn-link" %>

在模特里,

代码语言:javascript
复制
class Listing < ActiveRecord::Base
  has_attached_file :image, :styles => { :medium => "200x", :thumb =>        "100x100>" }, :default_url => "default.jpg"
  validates_attachment_content_type :image, :content_type => /\Aimage\/.*\Z/
end

在视图中,show.html.erb

代码语言:javascript
复制
<p id="notice"><%= notice %></p>

<div class="row">
   <div class="col-md-6">
     <div class="thumbnail">
      <%= image_tag @listing.image.url %>
    </div>
  </div>
  <div class="col-md-6">
    <h3><%= @listing.name %></h3>
    <p><%= number_to_currency (@listing.price) %></p>
    <p><%= @listing.description %></p>
  </div>
</div>

<%= link_to 'Edit', edit_listing_path(@listing), class: "btn btn-link" %>
<%= link_to 'Back', listings_path, class: "btn btn-link" %>

安装了宝石,

代码语言:javascript
复制
source 'https://rubygems.org'
ruby "2.3.3"

git_source(:github) do |repo_name|
  repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
  "https://github.com/#{repo_name}.git"
end
gem 'rails', '~> 5.0.1'
gem 'puma', '~> 3.0'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.2'
gem 'jquery-rails'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.5'
gem 'bootstrap-sass', '~> 3.3.6'
gem "paperclip", git: "git://github.com/thoughtbot/paperclip.git"
gem 'listen', '~> 3.1.5'
gem 'aws-sdk'

group :production do
  gem 'pg'
  gem 'rails_12factor'
end

group :development, :test do
  gem 'sqlite3'
end

group :doc do
  gem 'sdoc', require: false
end

在终端内部出错,

代码语言:javascript
复制
Listing Load (5.7ms)  SELECT  "listings".* FROM "listings" WHERE      "listings"."id" = ? LIMIT ?  [["id", 1], ["LIMIT", 1]]
   (0.1ms)  begin transaction
[paperclip] Trying to link   /var/folders/__/2162ls5577704gd514y0859w0000gp/T/RackMultipart20170210-    36927-1iuewku.jpg to  /var/folders/__/2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg

试图将/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg链接到/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1t9j57i.jpg命令的回形针::file -b --mime '/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1t9j57i.jpg‘命令::标识-format '%wx%h,%exif:'/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg‘2>/dev/null命令::标识-format %m '/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg’命令::'/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg‘--自动定向-resize "200“'/var/folders//2162ls5577704gd514y0859w0000gp/T/73570fb1d3ecfa0dc9a9d5e124c5763420170210-36927试图将/var/folders//2162ls5577704gd514y0859w0000gp/T/73570fb1d3ecfa0dc9a9d5e124 c 5763420170210-36927-j452kb连接到/var/folders//2162ls5577704gd514y0859w0000gp/T/9918700e8a5840d631b32dff0efdc32820170210-36927-1j9zu6h命令的-j452kb‘回形针::标识-format '%wx%h,%exif:'/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg‘2>/dev/null命令::标识-format %m '/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg’命令::'/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg‘--自动定向-resize "100x100>“'/var/folders//2162ls5577704gd514y0859w0000gp/T/73570fb1d3ecfa0dc9a9d5e124c5763420170210-36927-1t64b8q‘回形针试图将/var/folders//2162ls5577704gd514y0859w0000gp/T/73570fb1d3ecfa0dc9a9d5e124c5763420170210-36927-1t64b8q链接到/var/folders//2162ls5577704gd514y0859w0000gp/T/5a42e5f066b94471d8d7dd70241f775820170210-36927-1l2vm2j回形针试图将/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-1ywsn2q.jpg链接到/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-h40oj7.jpg命令::file -b --mime '/var/folders//2162ls5577704gd514y0859w0000gp/T/c3e768b17c5aa48db8ffbc959904bbaa20170210-36927-h40oj7.jpg‘SQL (0.9ms)更新“列表”集"image_file_name“=?"image_file_size“= ?,image_updated_at= ?,"updated_at”=?其中“列表”.“id”=?at", 2017-02-10 01:24:58 UTC], ["id", 1]回滚事务在457 in中完成了500个内部服务器错误(ActiveRecord: 8.6ms)

代码语言:javascript
复制
Errno::EACCES (Permission denied @ dir_s_mkdir - /listings):

app/controllers/listings_controller.rb:44:in `block in update'
app/controllers/listings_controller.rb:43:in `update'
  Rendering /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-  5.0.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erbwithin rescues/layout
  Rendering /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack- 5.0.1/lib/action_dispatch/middleware/templates/rescues/_source.html.erb
  Rendered /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/_source.html.erb (7.4ms)
  Rendering /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb
  Rendered /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (3.6ms)
  Rendering /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb
  Rendered /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (3.5ms)
  Rendered /Users/chrisdionne/.rvm/gems/ruby-2.3.3/gems/actionpack-5.0.1/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (152.5ms)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-10 02:10:00

正如@tadman所说,您正在尝试在应用程序路径之外创建附件。

试着改变

代码语言:javascript
复制
Paperclip::Attachment.default_options[:path] = '/:class/:attachment/:id_partition/:style/:filename'

就像

代码语言:javascript
复制
Paperclip::Attachment.default_options[:path] = ':rails_root/public/system/:class/:attachment/:id_partition/:style/:filename'

代码语言:javascript
复制
Paperclip::Attachment.default_options[:path] = "#{Rails.root}/public/system/:class/:attachment/:id_partition/:style/:filename"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42150197

复制
相关文章

相似问题

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