当我尝试在我正在使用的 Ruby 应用程序中上传图像时,出现内部服务器错误。我知道问题本身是什么,但我不完全确定如何解决它。截至目前,这是该应用程序的工作方式:
用户访问页面,允许上传图片,上传后进行图片处理。因此,当用户访问页面时,我正在创建一个新的 Gallery 实例(Galleries 包含一张或多张图片)。问题出在我试图创建以下内容的画廊控制器中:
def index
@gallery = Gallery.create
@picture = @gallery.pictures.build
respond_to do |format|
format.html # index.html.erb
format.json { render json: @galleries }
end
end
Andnddd 运行“localhost:3000/galleries/”时出现的错误
Completed 500 Internal Server Error in 148ms
ActionView::Template::Error (undefined method `gallery_pictures_path' for #<#<Class:0x000001023d8b98>:0x00000102383670>):
3: <%= javascript_include_tag 'jquery.fileupload-ui.js' %>
4:
5:
6: <%= form_for [@gallery, @picture], :html => { :multipart => true, :id => "fileupload" } do |f| %>
7:
8: <div>
9: <div class=" fileupload-buttonbar">
app/views/galleries/index.html.erb:6:in `_app_views_galleries_index_html_erb__2795478836341012416_2164674980'
app/controllers/galleries_controller.rb:8:in `index'
项目本身在 GitHub 上:https ://github.com/dflynn15/UploaderTest
问题要么在于我对 Gallery.create 以及如何创建新实例的理解(我知道孤儿实例运行的风险,但我将在修复此上传问题后实施到期日期),或者我对图片和图库是如何连接的,不允许 @gallery.pictures 成为无效路径。
谢谢你的帮助!