這應該是非常簡單的,但我看不出我做錯了什麼。 上傳的「新建」頁面中的表單出現錯誤。未定義的方法`upload_path' - Ruby on Rails中的'new'動作
- '' 上傳屬於 '事件'
- '事件' 有很多 '上傳'
- 的routes.rb是(據我所知)是正確的。
- 我打算重新提交使用將文件上傳到S3(按this教程...不知道這是否是相關的一切雖然)
Upload.rb
class Upload < ActiveRecord::Base
belongs_to :event
attachment :upload_file
end
Event.rb
class Event < ActiveRecord::Base
has_many :uploads
end
uploads_controller.rb
class UploadsController < ApplicationController
before_action :set_event
def new
@upload = @event.uploads.create
end
private
def set_event
@event = Event.find(params[:event_id])
end
end
的routes.rb
Rails.application.routes.draw do
devise_for :users
root 'pages#home'
resources :events do
resources :coupons
resources :uploads
member do
post :check
end
end
視圖/上傳/ new.html.erb(實施例)
<%= form_for @upload do |f| %>
<%= f.text_field :name %>
<% end %>
當我導航到'新'頁面,我收到以下錯誤:
未定義的方法`upload_path」爲#<#:0x007fb8709229f0>
爲什麼我不能添加與事件相關聯的新上傳?我知道我錯過了一件超級簡單的東西,但我無法把它放在手指上。