Ruby on rails rails回形针:上载的文件未存储

Ruby on rails rails回形针:上载的文件未存储,ruby-on-rails,file,upload,paperclip,Ruby On Rails,File,Upload,Paperclip,我正在使用Rails插件“回形针”作为RailsCast 134的第一步: 除了运行rails 3.0.9并通过将其添加到文件中来安装曲别针(2.3.15)之外,其他操作都是一样的 直到演员阵容3:00,一切正常。但在重新加载显示页面后,我得到的是“丢失”的图像,而不是上传的图像。此外,在“public”目录中没有创建任何新内容 有什么提示吗 更新:根据此处的要求,相关代码: Gemfile: … gem 'paperclip' gem 'rails', '3.0.9' … config/ro

我正在使用Rails插件“回形针”作为RailsCast 134的第一步:

除了运行rails 3.0.9并通过将其添加到文件中来安装曲别针(2.3.15)之外,其他操作都是一样的

直到演员阵容3:00,一切正常。但在重新加载显示页面后,我得到的是“丢失”的图像,而不是上传的图像。此外,在“public”目录中没有创建任何新内容

有什么提示吗

更新:根据此处的要求,相关代码:

Gemfile:
…
gem 'paperclip'
gem 'rails', '3.0.9'
…

config/routes.rb:
Foobar::Application.routes.draw do
  resources :books
end

app/models/book.rb:
class Book < ActiveRecord::Base
  has_attached_file :cover
  attr_accessor :cover_file_name
end

app/controllers/books_controller.rb:
# nothing changed here after scaffolding

app/views/books/_form.html.erb:
<%= form_for(@book, :html => { :multipart => true}) do |f| %>
…
<div class="field">
  <%= f.file_field :cover %>
</div>

app/views/books/show.html.erb:
…
<%= image_tag «book.cover.url %>
…

db/migrate/..._create_books.rb:
class CreateBooks < ActiveRecord::Migration
  def self.up
    create_table :books do |t|
      t.string :name

      t.timestamps
    end
  end

  def self.down
    drop_table :books
  end
end

db/migrate/..._ad_attachment_cover_to_book.rb:
class AddAttachmentCoverToBook < ActiveRecord::Migration
  def self.up
    add_column :books, :cover_file_name, :string
    add_column :books, :cover_content_type, :string
    add_column :books, :cover_file_size, :integer
    add_column :books, :cover_updated_at, :datetime
  end

  def self.down
    remove_column :books, :cover_file_name
    remove_column :books, :cover_content_type
    remove_column :books, :cover_file_size
    remove_column :books, :cover_updated_at
  end
end
Gemfile:
…
宝石“回形针”
gem“rails”、“3.0.9”
…
config/routes.rb:
Foobar::Application.routes.draw do
资源:书籍
结束
app/models/book.rb:
类目true})do | f |%>
…
app/views/books/show.html.erb:
…
…
db/migrate/…\u create\u books.rb:
类CreateBooks

在使用scaffold“book”之后,我开始使用“rails生成回形针书籍封面”

我认为
attr\u accessor:cover\u file\u name
会为同名的表列创建冲突。试着去掉那条线。找不到任何其他可能导致任何问题的内容。

我认为
attr\u访问器:cover\u file\u name
会为具有相同名称的表列创建冲突。试着去掉那条线。找不到任何可能导致任何问题的其他内容。

当您出现此错误时,我想我已经给出了解决方案。这是因为封面栏没有权限输入此错误已在params_文章中的文章控制器中解决。文章只能操纵标题,并且此标题的正文也会添加到专栏封面中对我来说,我就是这样

Def articulo_params params.require (: article) .permit (: title,: body,: cover)
End

人们我认为我已经给出了解决方案,当你出现这个错误是因为封面栏没有权限进入这是解决在控制器中的文章在paramsèu文章只能操纵标题和正文,这也添加到它的专栏封面我保持这样

Def articulo_params params.require (: article) .permit (: title,: body,: cover)
End

您是否在表单中添加了
:html=>{:multipart=>true}
。这一次,上传的文件被存储(根据日志和文件系统),但是在上传之后,我得到了“丢失”的图像。这是日志的相关部分:[回形针]保存附件。[paperclip]saving/home/myname/foobar/public/system/covers/4/original/03.png开始获取“/covers/original/missing.png”ActionController::RoutingError(无路径匹配“/covers/original/missing.png”):Rendered/var/lib/gems/gems/1.8/gems/actionpack-3.0.9/lib/action\u dispatch/middleware/templates/rescues/routing\routing\error.erb(0.9ms)发布你的代码。您的配置/设置有误和/或访问的URL有误。您是否在表单中添加了
:html=>{:multipart=>true}
?是的,我根据曲别针的安装说明添加了多部分。我从头创建了一个新的应用程序。这一次,上传的文件被存储(根据日志和文件系统),但是在上传之后,我得到了“丢失”的图像。这是日志的相关部分:[回形针]保存附件。[paperclip]saving/home/myname/foobar/public/system/covers/4/original/03.png开始获取“/covers/original/missing.png”ActionController::RoutingError(无路径匹配“/covers/original/missing.png”):Rendered/var/lib/gems/gems/1.8/gems/actionpack-3.0.9/lib/action\u dispatch/middleware/templates/rescues/routing\routing\error.erb(0.9ms)发布你的代码。您的配置/设置有误和/或访问URL有误。谢谢。与此同时,我也发现了这一点。在深入挖掘的过程中,我还发现,我的问题更多地出现在第8层:P上,似乎我错过了在搭建曲别针之后rake db:migrate,因为我发现曲别针列在db中完全丢失了。奇怪的是,这种情况在我身上发生了两次(在我的常规rails应用程序和我为本文创建的虚拟应用程序中)。douhHehe,当你开始挖掘时可能会发生:)还有一个补充:在我的常规rails应用程序中,还有另一件事让它变得有点复杂:我使用插件Desive和cancan。因此,我的模型中有可访问的属性。直到现在,我还没有弄明白,我必须将
has_attached_file
中的附件字段也添加到该列表中。现在它工作了,呸:)谢谢。与此同时,我也发现了这一点。在深入挖掘的过程中,我还发现,我的问题更多地出现在第8层:P上,似乎我错过了在搭建曲别针之后rake db:migrate,因为我发现曲别针列在db中完全丢失了。奇怪的是,这种情况在我身上发生了两次(在我的常规rails应用程序和我为本文创建的虚拟应用程序中)。douhHehe,当你开始挖掘时可能会发生:)还有一个补充:在我的常规rails应用程序中,还有另一件事让它变得有点复杂:我使用插件Desive和cancan。因此,我的模型<