Итак, я только что установил скрепку и пытаюсь заставить ее работать в моем новом приложении Rails.
Но я получаю эту ошибку, когда захожу в localhost / upload / new:
NoMethodError in Upload#new
undefined method `uploads_path' for #<#<Class:0x00000102d1b8e0>:0x00000102cf24e0>
Extracted source (around line #3):
1: <h1>Upload Images</h1>
2:
3: <%= form_for @upload, :html => { :multipart => true } do |f| %>
4: <%= render 'fields', :f => f %>
5: <div>
6: <%= f.submit "Upload" %>
Я решил еще одну ошибку с помощью Paperclip, включив следующую строку в мой файл config / application.rb:
Paperclip::Railtie.insert
Структура моего приложения состоит в том, что я создал модель с именем'uploads', потому что приложение будет управлять различными типами файлов - загруженными пользователями.Скрепка управляет изображениями.
Контроллер загрузки выглядит следующим образом:
class UploadController < ApplicationController
def index
end
def show
end
def new
@upload = Upload.new
@title = "Upload"
end
def edit
end
def delete
end
end
Итак, моя модель загрузки выглядит следующим образом:
class Upload < ActiveRecord::Base
attr_accessible :name, :description, :type
has_attached_file :image
end
Вот как мой новыйФайл .html.erb выглядит так:
<h1>Upload Images</h1>
<%= form_for @upload, :html => { :multipart => true } do |f| %>
<%= render 'fields', :f => f %>
<div>
<%= f.submit "Upload" %>
</div>
<% end %>
Часть выглядит следующим образом:
<%= render 'shared/error_messages', :object => f.object %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :description %><br />
<%= f.text_field :description %>
</div>
<div class="field">
<%= f.label :type %><br />
<%= f.text_field :type %>
</div>
<div class="field">
<%= f.file_field :image %>
</div>
PS Я просто изучаю Rails, поэтому, если есть ошибки новичка / новичка, пожалуйста, неt распни меня: |
Спасибо.
Редактировать: Вот вывод для маршрута граблей для приложения, как спросил Забба:
comment_index GET /comment/index(.:format) {:controller=>"comment", :action=>"index"}
comment_show GET /comment/show(.:format) {:controller=>"comment", :action=>"show"}
comment_new GET /comment/new(.:format) {:controller=>"comment", :action=>"new"}
comment_edit GET /comment/edit(.:format) {:controller=>"comment", :action=>"edit"}
comment_delete GET /comment/delete(.:format) {:controller=>"comment", :action=>"delete"}
upload_index GET /upload/index(.:format) {:controller=>"upload", :action=>"index"}
upload_show GET /upload/show(.:format) {:controller=>"upload", :action=>"show"}
upload_new GET /upload/new(.:format) {:controller=>"upload", :action=>"new"}
upload_edit GET /upload/edit(.:format) {:controller=>"upload", :action=>"edit"}
upload_delete GET /upload/delete(.:format) {:controller=>"upload", :action=>"delete"}
project_index GET /project/index(.:format) {:controller=>"project", :action=>"index"}
project_show GET /project/show(.:format) {:controller=>"project", :action=>"show"}
project_new GET /project/new(.:format) {:controller=>"project", :action=>"new"}
project_edit GET /project/edit(.:format) {:controller=>"project", :action=>"edit"}
project_delete GET /project/delete(.:format) {:controller=>"project", :action=>"delete"}
client_index GET /client/index(.:format) {:controller=>"client", :action=>"index"}
client_show GET /client/show(.:format) {:controller=>"client", :action=>"show"}
client_new GET /client/new(.:format) {:controller=>"client", :action=>"new"}
client_edit GET /client/edit(.:format) {:controller=>"client", :action=>"edit"}
client_delete GET /client/delete(.:format) {:controller=>"client", :action=>"delete"}
designer_index GET /designer/index(.:format) {:controller=>"designer", :action=>"index"}
designer_show GET /designer/show(.:format) {:controller=>"designer", :action=>"show"}
designer_new GET /designer/new(.:format) {:controller=>"designer", :action=>"new"}
designer_edit GET /designer/edit(.:format) {:controller=>"designer", :action=>"edit"}
designer_delete GET /designer/delete(.:format) {:controller=>"designer", :action=>"delete"}
root /(.:format) {:controller=>"project", :action=>"index"}